有没有办法列出CVS中两个标签之间已更改的所有文件?
每次我们发布版本时,我们都会将标记应用于该版本中的所有文件.我想找到版本之间发生变化的所有文件.
如果我能找到两个日期之间发生变化的所有文件,它也会起作用.
我想这个命令会有所帮助:
cvs diff -N -c -r RELEASE_1_0 -r RELEASE_1_1 > diffs
where RELEASE_1_0
和RELEASE_1_1
是标签的名称.
您可以在此处找到有关cvs diff命令的更多信息
加上它应该相当简单,创建一个脚本,使报告更适合您的需求,例如:文件数量已更改,创建已删除等等.据我所知,最常见的cvs GUI工具(wincvs和tortoise)不提供喜欢这个开箱即用.
希望能帮助到你 ;)
我更喜欢使用rdiff
和-s
选项
cvs rdiff -s -r RELEASE_1_0 -r RELEASE_1_1 module > diffs
rdiff
不需要沙箱; -s
为您提供更改的摘要.
使用CVS获取两个日期之间的文件列表:
cvs diff -N -c -D YYYY-MM-DD -D YYYY-MM-DD | grep "Index:" > diff.out
有关-D标志的可接受日期的更多信息:http://docs.freebsd.org/info/cvs/cvs.info.Common_options.html
要使用标准cvs命令获取一个版本与另一个版本之间已更改的文件列表:
cvs -q log -NSR -rV-1-0-69::V-1-0-70 2>/dev/null >log.txt
或者,要获取提交注释列表,只需删除-R
:
cvs -q log -NS -rV-1-0-69::V-1-0-70 2>/dev/null >log.txt
你替换的地方V-1-0-69
和V-1-0-70
你正在比较的修订.
cvs log -d ">=DATE" -N -S -R > cvs.log