我試圖從我branch
到trunk
.Merge類型合併文件是Range of revision
。保留文本空白,以便我需要獲得所有修訂合併。一旦完成,所有的pom.xml
都發生衝突。編輯所有的poms很難解決衝突。忽略來自合併
我想知道是否有任何選擇忽略我並不需要合併文件。
Version of tortoise svn is 1.6
我試圖從我branch
到trunk
.Merge類型合併文件是Range of revision
。保留文本空白,以便我需要獲得所有修訂合併。一旦完成,所有的pom.xml
都發生衝突。編輯所有的poms很難解決衝突。忽略來自合併
我想知道是否有任何選擇忽略我並不需要合併文件。
Version of tortoise svn is 1.6
當你做一個合併,你可以接受你喜歡採取哪些衝突。在Subversion中,您可以選擇theirs
表示您正在合併的分支,或者yours
表示您正在處理的分支。在命令行中,您還可以指定是否僅接受theirs
或yours
以查找衝突的位置或整個文件。 TortoiseSVN也提供相同的選項。當然,如果pom.xml
真的搞砸了(也許其中一個開發者決定重組整個事情,所以在trunk和你的分支之間幾乎沒有匹配),你可以總是在合併之後進行恢復。這就像合併期間跳過pom.xml
。
我遇到過開發人員有問題重組文件,然後遇到合併問題,因爲合併主要是文本分析,並且無法處理文件重構。做的最好的事情是恢復pom.xml
,然後找到某種XML diff工具,可以幫助你找出差異,併合並你想保留的。
然後進行pom.xml
中所需的更改,並在手動合併pom.xml
文件後提交合並。
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
命令行選項,以及,它可以選擇是否使用文件時的「我們」和「他們」版本合併。
確定。那麼我必須得到每一個衝突的文件,並做一個「你身邊」的版本或「他們的一方」檢查嗎? – NaaN 2014-11-21 11:09:20
@tailorBird,是的,但事實證明,有一個更好的方法 - 請參閱我更新的答案。你已經向Subversion「實施」了一些「倒退」的問題,這可能解釋了爲什麼你很難在SO上找到解決方案。 – kostix 2014-11-21 14:27:00