2014-11-21 77 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