CVS: a list of all files changed between tags (or dates)

Is there a way to list all files that have been changed between two tags in CVS?

Every time we make a release, we apply a tag to all files in this version. I want to find all the files that have changed between releases.

This will also work if I can find all the files that have changed between the two dates.

+52
cvs
Sep 26 '08 at 14:11
source share
7 answers

I suppose this command would help:

cvs diff -N -c -r RELEASE_1_0 -r RELEASE_1_1 > diffs 

where RELEASE_1_0 and RELEASE_1_1 are the names of your tags.

You can find a bit more information about the cvs diff command here

plus it should be quite simple to create a script to make the report more suitable for your needs, for example: the number of files modified, deleted deleted, etc. As far as I know, the most common cvs GUI tools (wincvs and tortoise) do not provide something like this out of the box.

Hope this helps ;)

+31
Sep 26 '08 at 14:27
source share

I prefer to use the rdiff and -s option

 cvs rdiff -s -r RELEASE_1_0 -r RELEASE_1_1 module > diffs 

rdiff does not require a sandbox; -s gives a summary of the changes.

+23
Oct 17 '08 at 17:00
source share

To get a list of files between two dates using CVS:

 cvs diff -N -c -D YYYY-MM-DD -D YYYY-MM-DD | grep "Index:" > diff.out 

Additional information on accepted dates for the -D flag: http://docs.freebsd.org/info/cvs/cvs.info.Common_options.html

+16
Feb 26 '10 at 16:24
source share

To get a list of files that have been changed between one version and another using standard cvs commands:

 cvs -q log -NSR -rV-1-0-69::V-1-0-70 2>/dev/null >log.txt 

Or, alternatively, to get a list of commit comments, just clear -R :

 cvs -q log -NS -rV-1-0-69::V-1-0-70 2>/dev/null >log.txt 

If you replace V-1-0-69 and V-1-0-70 with the revisions you are comparing.

+11
Oct 26 '09 at 0:44
source share
 cvs log -d ">=DATE" -N -S -R > cvs.log 
+7
Jul 11 2018-10-10T00:
source share

The DLira method provides many details, including all changes.

To just get a list of files, this works:

 cvs diff -N -c -r RELEASE_1_0 -r RELEASE_1_1 | grep "Index:" > diffs 
+4
Sep 26 '08 at 14:36
source share

The best tool I have found for this is a perl script called cvs2cl.pl . This can create a list of changes in several different formats. It has many different options, but I used tag tags, for example:

 cvs2cl.pl --delta dev_release_1_2_3:dev_release_1_6_8 

or

 cvs2cl.pl --delta dev_release_1_2_3:HEAD 

I also made comparisons using dates with the same tool.

+1
Sep 26 '08 at 15:18
source share



All Articles