2017-06-30 10 views
0

現在、私たちは現在、その中にたくさんのデータを持つSubversionサーバー(〜20Gb)を持っています。しかし、誰もがそのサーバと通信するためにgit svnを使います。git-svnからpure gitに移行

純粋なgitを使用したいと思っていますが、このためにサーバーを設定する必要はありません。単にファイル共有にgitリポジトリを置いてください。

これを設定するにはどうすればよいですか?理想的には、ファイルサーバ上のバージョンは "裸の"リポジトリであるべきですが、理想的には、私がクローンしている間にいくつかのコミットが行われる可能性があるため、svnアップデートを少しでも引き出す​​ことができます。

[注:Windowsはすべてがある]あなたのSVNリポジトリと同期して、純粋な「裸」のGitサーバーを持つようにしたい場合は

答えて

1

、あなたがSubGitを試すことができます。

すべてのSVNアップデートがそれに入るだけでなく、その逆もあります:GitリポジトリへのすべてのプッシュはSVNに変換されます。セットアップするには

このミラーの実行

$ subgit configure --svn-url SVN_PROJECT_ROOT_URL --layout auto --trunk trunk repo.git 

は、その後、あなたのニーズに応じてrepo.git/subgit /設定を調整して、あなたが直接repo.gitのクローンを作成することができた場合その後

$ subgit install repo.git 

を実行します。

$ git clone repo.git wt/ 

またはそれへのアクセスを設定します。 git-http-backendで、通常のGitリポジトリと同様に動作します。

詳細はQuick Howtoを参照してください。

免責事項:私はSubGit開発者の一人です。

+0

私はsvnリポジトリの管理者権限を持っていません。これは私がsvn-> gitアップデートを自動的に設定することができないということですか? – xorsyst

+0

管理権限はまったく必要なく、SVNクライアントとしてのみ機能します。必要なのは、 "subgit configure"ステップの直後にsubgit/passwdにパスワードを設定するか、Subversionのホームディレクトリに資格情報をキャッシュすることです(通常はSVNがパスワードを要求しない場合はすでにそうです)。 –

0

まあ.....サーバーでレポをセットアップできて、git svn fetchを実行するcronjob(またはスケジュールされたタスクなど)をセットアップして、svnに表示されるものと同期することができます"ローカル"ブランチをsvnブランチに移動して、人々が "見る"ことができるようにします。 gitに取り組んでいる開発者は、このリポジトリをリモート(例えば、起源、あるいは "mainrepo")として追加することができます。そして、リポジトリをどのようにして共有するのかを見極めることができます)。

関連する問題