我正在使用一個代碼庫(歷史記錄)已經通過手工合併而不是通過svn merge
。我試圖通過證明對大家有用的合併是如何改變這種狀況 - 但是當我做一個預演,我得到這個:svn merge --dry-run顯示svn區別
$ svn merge [[Repo URL]] . -c 21355,21358,21364,21370,21371,21373 --dry-run
--- Merging r21355 into '.':
U [[File 1]]
--- Merging r21355 into '[[dir]]':
U [[dir]]/[[File 2]]
U [[dir]]/[[File 3]]
--- Merging r21358 into '[[dir]]':
U [[dir]]/[[File 4]]
--- Merging r21364 into '[[dir]]':
U [[dir]]/[[File 2]]
C [[dir]]/[[File 4]]
--- Merging r21370 into '[[dir]]':
U [[dir]]/[[File 5]]
--- Merging r21371 into '[[dir]]':
U [[dir]]/[[File 5]]
--- Merging r21373 into '[[dir]]':
C [[dir]]/[[File 5]]
U [[dir]]/[[File 6]]
Summary of conflicts:
Text conflicts: 2
我有兩個文件(被列爲4和5,分別),即在一次合併中倖存下來只會與最後一次合併發生衝突。我試圖弄清楚現在是什麼衝突,看看我能否解決它。如果我可以強迫svn吐出兩個衝突變化的差異,我會喜歡它。
我檢查了剛剛最窄目錄的一個新的工作副本中,當我跑不空轉合併,我得到:
--- Merging r21355 into '.':
U [[File 3]]
--- Merging r21358 into '.':
U [[File 4]]
--- Merging r21364 into '.':
G [[File 4]]
--- Merging r21370 into '.':
U [[File 5]]
--- Merging r21371 into '.':
G [[File 5]]
--- Merging r21373 into '.':
G [[File 5]]
(文件1,2,6駐留在別處)
所以,現在我特別困惑 - 幹運行報告衝突,但是當合並實際運行時,它是成功的?這是預期的行爲?我承認我不是SVN巫師,但我很困惑。
我可以用兩個修訂版重現此問題。 Rev 7增加了一個文件,Rev 8改變了文件。命令'svn merge -r6:8'和'svn merge -c7,8'產生相同的結果。但是,如果我添加「--dry-run」選項,則前者成功,後者失敗。聽起來像是SVN 1.7中的一個bug。 – nosid 2013-05-13 20:03:32
@nosid我正在運行1.6.3 – FrankieTheKneeMan 2013-05-13 20:46:10