3

我们一直在同时处理一些文件。有时,当我们“svn up”时,我们会看到某些文件的每一行都附加了“^M”的文件。我们原本互相指责对方的编辑>_>。

从那以后,我们将其范围缩小到当存在冲突时“svn up”。如果我们隔离冲突文件并且 svn 不会出现“^M”。svn log/diff 中没有“^M”出现。它完全奇怪,对吧?

希望有人可能以前见过这个并知道一种解决方法。IDK,它可能无法在其他人的设置上重现。如果有帮助,我们正在使用 Subversion 1.4.4。

感谢您的阅读,感谢您的任何评论。

4

2 回答 2

2

这发生在我身上,当:

  • 我在 Windows 上使用 Subversion
  • 我正在使用 Vim

当 Subversion 添加冲突标记(在 Windows 上)时,它会以 CRLF 行结尾添加它们,而不管文件的其余部分是否只是 LF 行结尾。当我将冲突文件加载到 Vim 中时,它无法自动确定行尾样式,因此它仅假定 LF 并在每个标记的冲突行的末尾显示“^M”。在解决冲突之前,我确保将其中的任何一个都编辑出来(因此我的文件在本示例中具有所有 LF 行结尾)。

于 2009-09-09T20:48:35.193 回答
2

难道是合并工具添加了那些行尾字符?

另一件可能有帮助的事情是将svn:eol-style属性设置为项目中文件的本地属性。

于 2009-09-09T21:08:40.073 回答