developer tip

CVS : 태그 (또는 날짜)간에 변경된 모든 파일 나열

copycodes 2020. 12. 30. 08:18
반응형

CVS : 태그 (또는 날짜)간에 변경된 모든 파일 나열


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-69V-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

내가 찾은 최고의 도구는 cvs2cl.pl 이라는 perl 스크립트 입니다. 이렇게하면 여러 다른 형식으로 변경 목록을 생성 할 수 있습니다. 다양한 옵션이 있지만 다음과 같은 태그-태그 옵션을 사용했습니다.

cvs2cl.pl --delta dev_release_1_2_3:dev_release_1_6_8

또는

cvs2cl.pl --delta dev_release_1_2_3:HEAD

나는 또한 동일한 도구로 날짜를 사용하여 비교했습니다.

참조 URL : https://stackoverflow.com/questions/139759/cvs-list-all-files-changed-between-tags-or-dates

반응형