私は自分のリポジトリ全体(標準git svn init -t tags -b branches -T trunk $repo_url
ファッションで初期化され、次にgit svn fetch
edで初期化されました)のgit-svnチェックアウトを取得しました。私は手動でsvn copy $repo_url/branches/branch1 $repo_url/branches/branch2
です。私はgit svn fetch
、git checkout -b local-branch2 branch2
を実行して、branch2
、dcommit
に戻し、branch2
で作業しました。 (ブランチをブランチにする理由は?gitでこのブランチをハックしたかったのですが、まだSVNにコミットし、いくつかの同僚の協力を得ています)。git-svn:あるSVNブランチから別のSVNブランチにgitコミットをコピーするには?
をマージすると、branch1
に戻ります。私がgit checkout -b local-branch1 branch1
、次にgit merge branch2
なら、local-branch1
のポインタを単に早送りします。branch2
の位置にポインタを置きます。
代わりに、ブランチ1にbranch2
を開始してからコミットをすべて再生するようにしたいので、それぞれをSVNリポジトリにdcommitできます。これを行う方法があるようですが、私はそれを考えることができません。たぶんgit rebase
、またはbranch2
で行われた各コミットのgit cherry-pick
でしょうか? (後者はちょっと退屈ですが)。私はむしろ2つのURLを一緒にマージするのではなく、大きな怪物だからです。
アイデア?これのどんな部分ももっと説明が必要ですか?
* "ブランチをブランチにする理由は?"はい。 – naught101