简体   繁体   English

Tortoise SVN 合并添加`<<<<<<< .working`

[英]Tortoise SVN merge adds `<<<<<<< .working`

I'm merging trunk into my branch to keep it up to date, but the process adds <<<<<<< .working (and other, similar metadata) within the files themselves - I've been getting a large number of tree errors but I've made some extensive changes so it's to be expected (although it seems like the merge is flagging every single folder as a tree conflict)我正在将主干合并到我的分支中以使其保持最新状态,但是该过程在文件本身中添加了<<<<<<< .working (以及其他类似的元数据) - 我已经获得了大量的树错误,但我已经进行了一些广泛的更改,所以这是可以预料的(尽管似乎合并将每个文件夹都标记为树冲突)

Is there any way to prevent Tortoise SVN from adding this metadata to the file directly (that messes about with its ability to compile) and/or cleaning a large number of files without having to revert + re-merge?有什么方法可以阻止 Tortoise SVN 直接将此元数据添加到文件中(这会影响其编译能力)和/或清理大量文件而无需还原 + 重新合并?

APPEND: The answers so far are correct however, the problem here is that metadata was remaining after resolving the conflict.附加:到目前为止,答案是正确的,但是这里的问题是解决冲突元数据仍然存在。 Could this just be a bug?这可能只是一个错误吗?

These markers are inserted when tortoise can't resolve merge conflicts automatically, so it marks those as conflicted with information from both files - working copy and repository.当 tortoise 无法自动解决合并冲突时会插入这些标记,因此它将那些标记为与来自两个文件(工作副本和存储库)的信息冲突。 These markers will be removed after you resolve conflicts in any way - manually with TortoiseMerge, with menu items "resolve conflicts use mine"/resolve conflicts use theirs". But you have to decide what part will be used in your working copy after update.在您以任何方式解决冲突后,这些标记将被删除 - 使用 TortoiseMerge 手动,菜单项“解决冲突使用我的”/解决冲突使用他们的“。但您必须决定更新后将在您的工作副本中使用哪个部分。

Those <<<<<<< markers are added by Subversion itself (it isn't a TortoiseSVN feature) but as far as I know not for tree conflicts.那些<<<<<<<标记是由 Subversion 本身添加的(它不是 TortoiseSVN 功能),但据我所知不是冲突。 You must have regular file conflicts.您必须有常规的文件冲突。

As far as I know, TortoiseSVN doesn't have any feature to fully automate conflict resolution.据我所知,TortoiseSVN 没有任何功能可以完全自动解决冲突。 Options I can think of:我能想到的选项:

  • Choose "Prefer local" or "Prefer repository" every time the "Resolve Conflict" shows up.每次出现“解决冲突”时,选择“首选本地”或“首选存储库”。
  • Choose "Resolve all later" (I believe you only need to do it once) and, once finished merging, use the "Check for modifications" dialogue to select all conflicts and choose a method from the context menu.选择“稍后解决所有问题”(我相信您只需要执行一次),完成合并后,使用“检查修改”对话框选择所有冲突并从上下文菜单中选择一种方法。

当我们运行合并并且冲突不止一次出现在同一个文件中时,就会发生这种情况。

Those metadata are written by SVN because of conflicts.由于冲突,这些元数据由SVN写入。 You can solve using this command:您可以使用以下命令解决:

svn resolved <directory>

If SVN does not support "merge tracking", you might get the same conflicts every time you repeat your merge.如果 SVN 不支持“合并跟踪”,则每次重复合并时可能会遇到相同的冲突。 Make sure that "merge tracking" is available.确保“合并跟踪”可用。

see: How do I use the new SVN merge-tracking?请参阅: 如何使用新的 SVN 合并跟踪?

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM