SVN merge
に特有の問題に直面しています。開発ブランチからトランクにマージしたい。複数のdevブランチが同時にトランクを切断します。
このコマンドを使用して、これらのブランチの1つをトランクにマージしています。
svn merge trunk branch_1
このブランチの一部ではない変更が表示され、トランクにマージされます。私は何を間違えていますか?
SVNバージョン:
Subversionコマンドラインクライアント、バージョン1.6.16-SlikSvn-tag-1.6.16@1076804-WIN32.
svn merge
の構文が間違っています。
trunk
の作業コピーをチェックアウトしてから、svn merge --reintegrate
オプションを使用します。
$ pwd
/home/user/project-trunk
$ svn update # (make sure the working copy is up to date)
At revision <N>.
$ svn merge --reintegrate ^/project/branches/branch_1
--- Merging differences between repository URLs into '.':
U foo.c
U bar.c
U .
$ # build, test, verify, ...
$ svn commit -m "Merge branch_1 back into trunk!"
Sending .
Sending foo.c
Sending bar.c
Transmitting file data ..
Committed revision <N+1>.
詳細については、 SVN本のマージに関する章 を参照してください。
それが書かれた時点で、これは正しい答えでした(そして受け入れられました)が、物事は進んでいることに注意してください。 topekの回答を参照してください http://Subversion.Apache.org/docs/release-notes/1.8.html#auto-reintegrate
作業ディレクトリがトランクを指している場合、ブランチを次のものとマージできるはずです。
svn merge https://Host/repository/branches/branch_1
必ずトランクのルートディレクトリでこのコマンドを発行してください
トランクでsvn updateを実行し、リビジョン番号に注意してください。
トランクから:
svn merge -r<revision where branch was cut>:<revision of trunk> svn://path/to/branch/branchName
Svn logを実行して、ブランチがトランクから切断された場所を確認できます。
svn log --stop-on-copy
構文が間違っています。代わりに
svn merge <what(the range)> <from(your dev branch)> <to(trunk/trunk local copy)>