转载请注明出处,thanks。
工作中有时候需要发patch给客户整合修改,svn 自身可以导出 .diff(或者.patch) 文件供客户整合。
但是由于客户的code也在同步修改,有时候用 .dff 文件整合的话,看起来不直观,甚至patch出错。
所以,需要导出两个版本修改前后的文件,用比较工具查看就可以直观的看到进行了哪些修改。
尝试写了一个脚本,基本可以实现该功能,
用法: getSvnDiffFile.sh {BeginRev} {EndRev} {svnPath}
但是有如下限制:
1.在 svn 1.8.8 上测试ok,但是在svn 1.6.1 上由于要手动指定 svn export 到本地的文件名,所以不能work;
2.对带有空格的文件名不能用;
#!/bin/sh
#Usage: getSvnDiffFiles.sh {BeginRev} {EndRev} {RepoURL}
if [ $# -lt 3 ]; then
cat<<HELP
this script is for exporting diff files between two Revisions
Usage: getSvnDiffFiles.sh {BeginRev} {EndRev} {RepoURL}
Note: not support filenames with space
HELP
exit 0
fi