2009-09-09 93 views
3

我們一直在研究一些文件。偶爾,當我們「svn up」時,我們會看到帶有「^ M」的文件被附加到某些文件的每一行。我們最初指責對方的編輯> _>。SVN Update在衝突時添加^ M?

當衝突存在時,我們已經將其縮小到「svn up」。如果我們隔離衝突的文件和svn,則不會出現「^ M」。沒有「^ M」出現在svn log/diff中。它完全奇怪,對吧?

希望有人可能以前見過這種情況並知道解決方法。 IDK,它可能無法在其他人的設置中重現。如果有幫助,我們使用Subversion 1.4.4。

感謝您的閱讀,我很欣賞任何評論。

+0

一些svns將標記顯示出衝突發生的地方......它很煩人 – Daniel 2009-09-09 20:47:46

回答

2

這發生在我身上的時候:

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

當Subversion增加了衝突標誌(在Windows上),它增加了他們與CRLF行結尾,無論文件的其餘部分是否只是LF行尾。當我將衝突的文件加載到Vim中時,它不能自動確定行結束樣式,因此它僅假定LF,並在每個標記衝突行末尾顯示「^ M」。在解決衝突之前,我一定要編輯其中的任何一個(所以我的文件在這個例子中有所有的LF行尾)。

2

難道合併工具會添加那些行尾字符?

另一件可能有用的事情是將svn:eol-style屬性設置爲本地項目中的文件。