Subversion合并:始终用新版本替换文件

时间:2010-03-02 19:26:05

标签: svn tortoisesvn

进行合并时,是否有任何subversion属性可以设置为始终用更新的ervision替换文件(而不是做差异并在无法合并时引发冲突)?

我所指的文件集是C#项目文件(* .csproj)。这些文件总是引发冲突。我希望这些文件始终更新到合并时更新的版本。

4 个答案:

答案 0 :(得分:3)

如果指定--accept theirs-full作为svn merge的选项,则可以在存储库方面进行更改,并在发生冲突时自行删除。

编辑:第二个想法,我同意你可能不应该这样做。有关建议的执行方式,请参阅SVN FAQ

答案 1 :(得分:1)

我们对几种文件类型有独占锁,一种是cproj文件。我们还有一个工作实践,开发人员只需要锁定一小段时间,即如果你添加一个类然后获取锁,添加一个空类存根(编译!)然后释放。我知道很多人对颠覆中的独家锁感到不满,但它在中小型项目中运作良好。不确定我是否愿意将其扩展到大型项目。

答案 2 :(得分:0)

理想情况下,您根本不会提交项目文件,只需要编译源代码和必要的库。然后,您可以将项目文件添加到svn:ignore,您将不必再担心它了。

然后,项目中的其他开发人员可以自由地围绕现有工作区创建C#项目文件,将其设置为编译,并对他们希望的项目设置进行任何本地修改,而不会破坏您的构建。 C#项目文件有点麻烦,但这仍然是最糟糕的10-15分钟工作,你只需要做一次。

答案 3 :(得分:0)

我不知道在合并冲突中自动拥有svn / tortoisesvn“自动接受”的方法。手动执行是我总是处理bunk merge-conflict的方法。你应该能够通过TortoiseSVN通过告诉Tortoise使用'他们'文件来解决冲突,消除你所做的任何改变。