私は非常に乱雑な履歴を持つ非常に大きなSubversionリポジトリを使って作業しています。それは標準のディレクトリレイアウトを持っていますが、別の理由のために私はgit svn clone
を使ってクローンを作成できません。それを〜2日間実行したままにしておくと、無限ループに陥るように見えるので、完全なリポジトリのクローンを中止しました。Git SVNを使ってブランチだけを追跡するには?
リポジトリには、メイン開発ブランチ/branchs/devがあり、そのブランチから数多くの機能ブランチがあります。 gitのマスターブランチトラッキングdevと各機能のブランチを、標準のgitリモートブランチでブランチするだけです。
今まで私はdevブランチと各フィーチャーブランチ用に別々のGitリポジトリを作成していました。私はそれらをすべて取得する必要はないと思っていたので、各ブランチから最後のn個のコミットだけを取得します(さらに、 'dev'ブランチは理論的には「トランク」にはなりません)。ここで私が使用したものです...
$ git svn init <full svn branch url> <dir name>
$ cd <dir name>
$ git svn fetch -r <start rev>:HEAD (where <start rev> is either the last or some recent commit on the branch)
この方法を使用すると、各支店が孤立して良好に動作することができますが、それは私が機能ブランチおよびその逆までDEVからマージするgitのを使用することはできません。
「dev」と機能ブランチを1つのリポジトリ内で追跡するにはどうすればよいですか?
ありがとうございます。私はあなたの提案をテストSVNリポジトリでテストしました。それは問題です。SVNリポジトリの主な問題は、devブランチが何度も分岐してクローンを試みていることが証明されているためです。事実上不可能です。それはあなたの提案はまだ感謝の意を表します。 – Adrian
パラメータ--trunkのヒントは、私の頭痛の多くを保存しました。ありがとう! – fschmitt