1

私の質問は少し複雑ですので、ご容赦ください。

いくつかの開発を行うためにブランチを作成しましたが、すべての変更セットをトランクにマージしたいと考えています。ブランチの 2 つのポイントで、トランクからの変更をブランチにマージして、最新の状態に戻しました。

mkdir trunk
cd trunk
svn co $TRUNK .

r2797にブランチを作成し、そのブランチへの最後のコミットはr3151 でした。

ここで、ブランチを作業コピーのトランクにマージするために一人で来ると、次のようになります。

svn merge $BRANCH .

次のメッセージが表示されます。

--- Merging r2798 through r3022 into '.':

これは奇妙です。r3151 まですべての変更セットを適用しないのはなぜですか?

そこでマージコマンドにリビジョンを指定してみました。

svn merge -r2797:3151 $BRANCH .

しかし、私は同じ結果を得ます。私は何を間違っていますか?

4

1 に答える 1

2

SVN は svn:mergeinfo プロパティを使用してマージを追跡します。他のリビジョンは既にマージされているため、おそらくマージされません。

詳細については、 http://svnbook.red-bean.com/en/1.7/svn-book.html#svn.branchmerge.basicmerging.mergeinfoを参照してください。

于 2012-04-16T21:47:56.410 に答える