1

我试图从我的合并branchtrunk.Merge 类型是Range of revision. 将文本保留为空白,以便我需要合并所有修订。一旦完成,所有的pom.xmls都会发生冲突。很难编辑所有的 pom 来解决冲突。

我想知道是否有任何选项可以忽略我不需要合并的文件。

Version of tortoise svn is 1.6
4

2 回答 2

2

当您进行合并时,您可以接受您喜欢采取的冲突。在 Subversion 中,您可以选择theirs表示您要合并yours的分支或您正在处理的分支。在命令行中,您还可以指定是只接受theirs还是只接受yours冲突所在的位置,或者整个文件。TortoiseSVN 也提供了相同的选项。

当然,如果pom.xml真的搞砸了(也许其中一位开发人员决定重组整个事情,因此主干和您的分支之间几乎没有匹配),您总是可以在合并后进行还原。这就像pom.xml在合并期间跳过。

我遇到了开发人员帮助重组文件然后遇到合并问题的问题,因为合并主要是文本分析,并且无法处理文件重组。最好的办法是 revert pom.xml,然后找到某种XML diff工具来帮助您找出差异,并合并您想要保留的那些。

然后在 中进行所需的更改,pom.xml并在手动合并pom.xml文件后提交合并。

于 2014-11-21T16:17:35.640 回答
1

AFAIK,您不能忽略正在合并的文件,但是在合并完成(并创建冲突)之后,您可以使用文件的“您的一方”版本或“他们的一方”版本来解决特定文件中的冲突。引用svn help resolve手册:

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

不知道它是如何映射到 TortoiseSVN 上的……


更新:忽略我的回答:说明该svn merge命令也具有--accept命令行选项,并且可以选择在合并时是使用“我们的”还是“他们的”版本的文件。

于 2014-11-21T11:01:55.420 回答