2014-11-21 123 views
0

我試圖從我branchtrunk .Merge類型合併文件是Range of revision。保留文本空白,以便我需要獲得所有修訂合併。一旦完成,所有的pom.xml都發生衝突。編輯所有的poms很難解決衝突。忽略來自合併

我想知道是否有任何選擇忽略我並不需要合併文件。

Version of tortoise svn is 1.6 

回答

1

當你做一個合併,你可以接受你喜歡採取哪些衝突。在Subversion中,您可以選擇theirs表示您正在合併的分支,或者yours表示您正在處理的分支。在命令行中,您還可以指定是否僅接受theirsyours以查找衝突的位置或整個文件。 TortoiseSVN也提供相同的選項。當然,如果pom.xml真的搞砸了(也許其中一個開發者決定重組整個事情,所以在trunk和你的分支之間幾乎沒有匹配),你可以總是在合併之後進行恢復。這就像合併期間跳過pom.xml

我遇到過開發人員有問題重組文件,然後遇到合併問題,因爲合併主要是文本分析,並且無法處理文件重構。做的最好的事情是恢復pom.xml,然後找到某種XML diff工具,可以幫助你找出差異,併合並你想保留的。

然後進行pom.xml中所需的更改,並在手動合併pom.xml文件後提交合並。

1

AFAIK,你不能忽略的文件被合併,但合併完成後(併發生衝突被創造),你能解決使用「在你身邊」的版本或特定文件衝突「他們一邊「文件的版本。舉svn help resolve手冊:

--accept ARG    : specify automatic conflict resolution source 
         ('base', 'working', 'mine-conflict', 
          'theirs-conflict', 'mine-full', 'theirs-full') 

不知道如何映射到了TortoiseSVN雖然…


更新:無視我的回答:this解釋說,svn merge命令有--accept命令行選項,以及,它可以選擇是否使用文件時的「我們」和「他們」版本合併。

+0

確定。那麼我必須得到每一個衝突的文件,並做一個「你身邊」的版本或「他們的一方」檢查嗎? – NaaN 2014-11-21 11:09:20

+0

@tailorBird,是的,但事實證明,有一個更好的方法 - 請參閱我更新的答案。你已經向Subversion「實施」了一些「倒退」的問題,這可能解釋了爲什麼你很難在SO上找到解決方案。 – kostix 2014-11-21 14:27:00