Windows和Linux下的svn diff差异

3

我在Windows机器上和Linux机器上都有一个SVN版本库的两个检出。对两个版本库进行完全相同的修改后,我使用 svn diff 命令生成两个补丁文件。我期望这两个补丁文件是相同的,但实际上它们并不一样。原因是在Windows上运行 svn diff 命令会产生包含回车符的文件。

如何简单地修改Windows上 svn diff 命令的行为以匹配Linux上 svn diff 命令的行为?


svn diff -x --ignore-eol-style 这个命令有帮助吗? - nanny
要明确的是,本地文件本身可能有一些带回车符号的行和一些没有。 - dshin
@GregHewgill 这要求在Linux端应用相同的过滤器,或更改基础文件以具有统一的行结尾。对我来说,这两个选项都不可行。 - dshin
@dshin:哦,我以为你只是在谈论出现在差异文件中的行尾。如果你在谈论实际存储库文件中的行尾,你可能需要澄清你的问题。 - Greg Hewgill
如果实际仓库文件包含CR(回车符),那么svn diff在Linux输出会包含CR,而经过CR过滤的svn diff在Windows输出中则不会包含。 - dshin
显示剩余6条评论
1个回答

2
为了在Windows上获得与Linux相同的输出,您可以使用Cygwin并从其中运行svn,而不是使用普通的命令提示符。这将使用类似于Linux的版本的svn,它将生成具有Unix行结束符的补丁文件,同时保持源文件的行结束符。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接