我有兩個SVN分支簽出,「b1」和「b2」。我想將我的所有提交從「b1」分支合併到「b2」分支。我試過類似如何合併兩個SVN分支?
svn merge -r HEAD:HEAD b1 b2
但它什麼也沒做。我相信我有這個命令是錯誤的,但我找不到好的文檔。我想在客戶端執行此操作,而不是創建第三個分支。
我使用SVN 1.4.4,它不支持重新集成選項。
我該怎麼辦?
我有兩個SVN分支簽出,「b1」和「b2」。我想將我的所有提交從「b1」分支合併到「b2」分支。我試過類似如何合併兩個SVN分支?
svn merge -r HEAD:HEAD b1 b2
但它什麼也沒做。我相信我有這個命令是錯誤的,但我找不到好的文檔。我想在客戶端執行此操作,而不是創建第三個分支。
我使用SVN 1.4.4,它不支持重新集成選項。
我該怎麼辦?
你的問題是與-r
標誌。您必須指定範圍的修訂。因此,例如:
svn merge -r 13:HEAD b1 b2
爲了找出正確的版本號,你可以這樣做:
svn log --stop-on-copy b1
log
然後將只列出提交其發生在b1
。你會看到最小的版本號。
我從來沒有使用過這種形式。我總是確保我積極上分支b2
,然後做:
svn merge -r 13:HEAD url://to/branch/b1
從reference page for svn merge在the Subversion book:
$ svn merge --reintegrate \ http://svn.example.com/repos/calc/branches/my-calc-branch --- Merging differences between repository URLs into '.': U button.c U integer.c U Makefile U . $ # build, test, verify, ... $ svn commit -m "Merge my-calc-branch back into trunk!" Sending . Sending button.c Sending integer.c Sending Makefile Transmitting file data .. Committed revision 391.
編輯: OK,讓你在使用的是舊版本的顛覆。在這種情況下,請參閱Merging a Whole Branch to Another的version 1.4 of the book。
只需鍵入「SVN幫助合併」來獲得幫助 – 2009-09-03 04:31:44