質問

概念は理解していますが、これまでにソース管理を使用したことはありません。私が混乱している(そしておそらく気付いていない)ことは、私が達成する利点、および/またはSubversionとApacheを構成する理由です。ネットワーク経由で他のコンピューターからリポジトリーにアクセスできるように、Apacheで構成する必要がありますか?関連性があると思うその他の詳細をお気軽にご記入ください。

現在のセットアップは、ラップトップ(Windows  XP Pro)と仮想マシン(Windows  XP Pro)です。私の仮想マシンには、Apache 2.2、MySQL 5、およびPHP 5があります。このセットアップは、私のシナリオから逸脱する例/状況を聞いてうれしいですが、私の主な関心事です。

役に立ちましたか?

解決

ApacheでSubversionをセットアップする必要はありません。私は長年Subversionを使用してきましたが、使用する必要はありませんでした(ただし、主に認証インフラストラクチャを使用する理由があります)。あなたはWindowsの世界にいるので、 VisualSVNサーバーが強く推奨されており、簡単にセットアップして使用できます。

他のヒント

SVNBookエントリ:サーバー構成の選択。 Subversionサーバーにアクセスするさまざまな方法の長所と短所について説明します。

SVNプロトコルは、設定と管理が最も簡単ですが、おそらく企業のファイアウォールを越えては機能しません(ただし、ApacheはHTTP経由で機能します)。

ポート3690を閉じる必要がある場合に役立ちます。また、ユーザーが長所と短所を持つブラウザーを使用してコードを閲覧することもできます。コードを表示するためにSubversionクライアントを用意する必要はありませんが、Webブラウザーは粗雑なリポジトリブラウザーを作成します。

設定はそれほど難しくありません。 このページが役立つことがわかりました

ただし、ローカルVM環境で使用している場合は、 svnserve で十分です。

Apacheを介してSVNリポジトリをホストする利点は、リポジトリにACLが必要な場合に役立ちます。

基本認証を構成し、ディレクトリごと(または必要に応じてファイルごと)にアクセス許可を制限できます。たとえば、ゲストのチェックアウトを許可するようにリポジトリを構成できますが、リポジトリへの書き込みには特定の有効なユーザーが必要です。

Apacheを使用してユーザーを認証すると、.htpasswdでユーザーを定義する必要がなくなります。 Apacheは、ほとんどすべてのタイプのSQLサーバーにLDAPをフックしたり、Kerberos認証を使用したりできます。

単純な svnserve を使用すれば十分です。ただし、きめ細かいアクセス許可は適用できず、認証のために別のユーザーデータベースにフックすることはできません。

しかし、あなたの説明から、上記のすべてはやり過ぎかもしれません。 Apacheが提供する利点は、1人のユーザーにはほとんど役に立たず、面倒な価値はありません。

あなたが直面している状況は、WebDAVプロトコルを使用してSVNリポジトリにアクセスしたい場合です。この場合、Apacheが基本的にSVN自体の仲介としてファイルアクセスを処理できるようにします(リポジトリへの直接接続はありません)。

これはかなりうまくいくと聞きましたが、いくつかの選択肢があります。出発点については、SVNブック(Googleを参照)をご覧ください。

Visual SVNリポジトリを使用して、小さなチーム(6人)環境でSubversionを使用します。当初、Apache Webサーバーはなく、IISだけでしたが、現在はApacheも実行していますが、リポジトリにApacheを使用する説得力のある理由はありません。

Apacheを使用すると、WebDAVを介してリポジトリにアクセスできます。これは、標準ポートでHTTP経由で行われるため、たとえば企業のファイアウォールの背後でリポジトリにアクセス/公開できますが、 svnserve ポート。

他の人とコードを共有したい場合、

SVNは クライアントサーバーシステムになります。ただし、コードを単独で(複数のコンピューターからでも!)で作業する場合は、任意のサーバーはまったく必要ありません!

file://-protocolビルドをほぼすべてのSVNクライアントとローカルSVNリポジトリに使用できます。

SVNリポジトリはネットワーク共有からも機能します。ただし、このアプローチは、単独で作業する場合にのみのみ使用する必要があります!

Apacheを使用する必要はありません。カスタムサーバーがあります-代わりにsvnserve.exeを使用できます。デフォルトではポート3690で実行されますが、セットアップ時に-port スイッチを使用して別のポートに設定できます。

Greg Hewgillは、使用するSubversionサーバーのバージョンと、さまざまなユースケースを示すリンクを提供しました。何らかの認証と統合する必要がない場合、基本的には svnserve に要約されます。より複雑なシナリオが必要な場合は、Apacheを使用してください。

svnserveを処理する商用Windowsコンソールがあります。私のプロフィールには、そのユーティリティを見るためのリンクがあります。 Apacheを使用することに決めた場合は、 VisualSVNサーバーを使用することをお勧めします。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top