私はgitsvnリポジトリを持っています。ここには複数のリリースブランチがあります。私は新しいリリースを準備していて、その一環として、以前のリリースから「git rebase」を実行して、マージされていない変更をプルすることにしました。
だから私は自分の支店を設立しました...
git branch new_release remotes/svn-branches/new_release
git branch old_release remotes/svn-branches/old_release
そして、私はリベースをしました...
git checkout new_release
git rebase old_release
# watch it pull a bunch of commits
git svn dcommit
Committing to https://svn.mysvn.net/repo/releases/old_release ...
「svndcommit」を実行した後、私はズボンをほとんど叩きました。それはSubversionで私の古いリリースブランチをホースで止めていました!
リベースを行った結果、リモートトラッキングブランチが変更されたのはなぜですか?
自分が陥った状況を修正するにはどうすればよいですか?
編集:さて、私は自分自身を抜け出すために私は次のことができると信じています:http ://svnbook.red-bean.com/en/1.5/svn.branchmerge.basicmerging.html#svn.branchmerge.basicmerging.undo
old_releaseにプルされたnew_releaseブランチにあったコミットはほんの一握りなので、SVNリポジトリで個別に手動で元に戻すことができます。私はまだここで何が起こったのか混乱しています。
EDITx2:はい、確認するためのいくつかの手順があります。
- SVNブランチにリモートで追跡する2つのgitブランチを設定します
- ブランチの1つをチェックしてください
- 実行
git svn info
して、URLがSVNの正しい場所を指していることを確認します - 走る
git rebase <other_branch>
- もう一度実行
git svn info
して、SVN内の他のブランチの場所を指すように変更されたURLを確認します