近日有需要在Cygwin下生成patch,然后再在Cygwin下应用这个patch,遇见了比较烦人的问题如下:
1. ^M问题,即DOS下的回车和Linux下的回车符不一致。
2. svn diff > 123.patch 生成patch时,无法显示Binary file,报错“Cannot display: file marked as a binary type.”。
解决方案如下:
生成patch:
svn diff --force --diff-cmd /usr/bin/diff -x "-au --binary" OLD-URL NEW-URL > 123.patch
or
svn diff --force --diff-cmd /usr/bin/diff -x -au > 123.patch
应用patch:
patch -p0 --binary -i 123.patch
OK,搞定收工。
本文介绍了在Cygwin环境下使用SVN生成和应用patch解决DOS与Linux文件格式不一致的问题,通过指定diff命令参数解决^M问题,并提供了应用patch的具体命令。

被折叠的 条评论
为什么被折叠?



