6

您如何使用 svnmerge 在 svn 中进行合并和分支?

具体来说,我问是因为我已经开始使用svnmerge来跟踪我从事的项目中的特定分支。我做了 svnmerge merge 并最终得到了很多奇怪的文件,比如.merge-left, .merge-right, .working. 现在,我想看看其他人如何使用它来最终学习如何恢复我的更改并以最佳方式应用合并。

4

1 回答 1

20

如果您正在查看合并左/右/工作文件,那么这意味着您尝试应用的合并中存在冲突。这意味着在源分支(您合并的分支)和目标分支(您要合并到的分支)上以不同方式更改了相同的代码部分。

  • 'file.py.merge-left.rxxx` 显示了取冲突左侧的合并结果
  • 'file.py.merge-right.ryyy' 显示了冲突右侧的合并结果
  • 'file.py.working` 显示您未更改的工作副本
  • “file.py”显示 SVN 尝试合并两者

有关冲突的更多信息,请参阅 SVN Book。要解决它们,您需要查看左右文件并找出如何最好地组合冲突的更改。如果您有 SVN GUI,例如 TortoiseSVN 或 SmartSVN,那么您应该能够打开客户端的冲突查看器。我强烈建议不要尝试从原始文本文件中进行操作。如果您是 emacs 用户,那么也ediff可以很好地解决冲突。

对更改感到满意后,您需要在 SVN 中将文件标记为“已解决”,这样您就可以签入文件。

于 2009-11-04T13:30:07.557 回答