2011-01-28 45 views
2

我想重新集成一個功能分支回樹幹,但「測試合併」沒有顯示「真正的合併」實際上要做什麼。 「測試合併」看起來不錯,「真正的合併」把我的工作副本搞砸了。SVN合併與測試合併 - 結果是不一樣的

功能分支是在rev 481從trunk中進行的。主幹現在是在rev 525.我已經成功同步了功能分支與從481-524的所有樹幹更改,因此兩棵樹現在都在525.

我從trunk文件夾開始合併操作,選擇「Merge two不同的樹「在龜。

的「發件人:」框中爲主幹URL,修訂版本設置爲525

「發送到:」箱子是特性分支URL,修訂版本設置爲525

「工作拷貝」被設置爲主幹網址。

我點擊「下一步」,然後「測試合併」,在測試中一切都很好,所以我做了真正的合併。

真正的合併完成所有的變化,測試合併一樣,但隨後又後,做多:

  1. 合併的差異betweeen的URL(這是正確的,每次測試合併後),它說它是「合併r481到r525」,這給出了一堆樹衝突。

  2. 然後,它說它的「反向合併525到481」,這並沒有給出很多錯誤,但它似乎取消了我對文件所做的很多更改。

我的問題是:我該怎麼辦合併,沒有它做第二兩個步驟?而且,爲什麼測試合併不顯示後面兩步?測試的重點應該是預覽實時合併期間實際發生的事情。

回答

0

我想我可能已經想通了。我檢查了最終合併屏幕上的「忽略血統」選項,並且合併工作。根據我對這個選項的理解,我不清楚爲什麼這個修復了它,但它確實如此。

1

我已經成功地同步所有主幹的修改功能分支從481-524

在你應該使用「復興分支」合併選項的情況。從merging在TortoiseSVN的手冊中的部分:

復興分支

這個方法覆蓋了你 了一個新特性分支在Subversion手冊中討論 的情況。所有 中繼線更改已移植到 功能分支,一週一週,現在 功能完成你想 合併它回到中繼線。由於 您保留了與中繼同步的功能分支 ,所以 最新版本的分支和中繼 將完全相同,除了您的分支更改的 。

在此操作之後,您不應再使用功能分支。

+0

我們在不支持mergeinfo命令的服務器上使用舊版本的Subversion,所以我們不能使用該方法。 – benr 2011-01-28 16:11:20