문제
CVS의 두 태그 사이에서 변경된 모든 파일을 나열하는 방법이 있습니까?
릴리스를 할 때마다 해당 릴리스의 모든 파일에 태그를 적용합니다. 릴리스간에 변경된 모든 파일을 찾고 싶습니다.
두 날짜 사이에 변경된 모든 파일을 찾을 수 있다면 작동합니다.
해결책
이 명령이 도움이 될 것이라고 생각합니다.
cvs diff -N -c -r RELEASE_1_0 -r RELEASE_1_1 > diffs
어디 RELEASE_1_0
그리고 RELEASE_1_1
태그의 이름입니다.
CVS Diff 명령에 대한 더 많은 정보를 찾을 수 있습니다. 여기
또한 귀하의 요구에 더 적합 할 수 있도록 스크립트를 작성하는 것은 상당히 간단해야합니다. 예 : 가장 일반적인 CVS GUI 도구 (WINCVS 및 거북이)를 아는 한 무언가를 제공하지 않는 한, 파일 수 변경, 삭제 등. 이렇게 상자에서.
도움이되기를 바랍니다 ;)
다른 팁
나는 사용하는 것을 선호한다 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
Dlira의 방법은 모든 변경 사항을 포함하여 많은 세부 사항을 제공합니다.
파일 목록을 얻으려면 다음과 같습니다.
cvs diff -N -c -r RELEASE_1_0 -r RELEASE_1_1 | grep "Index:" > diffs
The best tool I've found for this is a perl script called cvs2cl.pl. This can generate a change list in several different formats. It has many different options, but I've used the tag-to-tag options like this:
cvs2cl.pl --delta dev_release_1_2_3:dev_release_1_6_8
or
cvs2cl.pl --delta dev_release_1_2_3:HEAD
I have also done comparisons using dates with the same tool.