2012-08-05 73 views
2

我試圖做一個從我的分支到樹幹修訂合併。最初,當我嘗試將應用於主幹的更改與一個文件發生衝突並嘗試解決衝突時,我犯了一個錯誤。所以我刪除了代碼,重新從存儲庫檢查了trunk,並重新啓動了該進程。當我試圖合併版本時,我發現這些更改沒有得到應用。我可以看到沒有文件被合併有什麼問題,我在做什麼?櫻桃拿起選項有問題svn

同樣在櫻桃拾起選項我可以看到一些修訂正在跳過。只是想了解svn如何進行更改,如果我修改了兩個修訂中的一個文件,例如r1和r2,並且如果我嘗試執行r2的合併,那麼r1的更改也會合並,因爲我在r1之上完成了更改在r2?另外如果我嘗試合併R1的變化,R2的變化會被跳過?另外,我將這兩個版本都修改爲合併會發生什麼?

另外我怎麼能知道這個修訂版是否已經合併到主幹而不是比較代碼?

問候, 亞當

回答

0

當你在做SVN櫻桃採摘修改,你必須要小心的依賴。類似的問題在你的例子情況下,假設下面的情形:

  • R1:修改fileA.txt
  • R2:修改fileA.txt
  • R3:修改fileB.txt

然後當你櫻桃採取不同的方式如下:

  • 只有R2 - 不會工作,因爲有相同的修訂之前,它相同文件
  • R1 + R2 - 將起作用,因爲所有以前的相關修訂也被選中
  • R3僅適用 - 因爲不存在先前依賴項。

因此,依賴關係檢查歸結於找出哪些修訂涉及修改其他先前修訂中的相同文件。當您在櫻桃挑選中修改了許多文件並進行了多次修改時,手動檢查可能會造成混淆並容易出錯。我會推薦使用算法檢查依賴櫻桃採摘,因爲我們已經在我們的發佈管理軟件(http://syncrelease.com/tour