[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
CVS Log unexpected results
CVS Log unexpected results
Fri, 21 Apr 2006 21:22:18 -0400
I'm using Concurrent Versions System (CVS) 1.11.20 (client/server) on a
Standard operation for our builds is to create a branch for a release,
tag everything, update to the tag, then build. We repeat the tag,
update and build steps until we release, then merge everything back to
I'm trying to come up with a report of what updates have occurred since
the last build on a branch. On the surface, it seemed rather easy, but
I've run into problems. I'm relatively new with CVS, so I'm hoping I'm
just doing something wrong.
I started my report by using 'cvs diff' to find out what files have been
modified for a project:
cvs -q diff --brief -r <branch> -r <last-tag> project returns a list of
files that have been modified in the branch since tag 'last-tag'.
So far, so good. I then wanted to use 'cvs log' to show me the commit
comments for revisions that were newer in the branch.
cvs -q log -S -r<last-tag>:: filename
where filename was one of the filenames returned by the 'cvs diff'. The
problem occurs when the updated file is the first revision on a branch.
In that case, cvs diff returns nothing.
Case and point:
> cvs -q diff --brief -r MV_6_8 -r MV6_8_0_43 ms
RCS file: /cvs/rep01/Configomatic/ms/conf/spring/web.xml,v
retrieving revision 126.96.36.199
retrieving revision 1.22
diff --brief -r188.8.131.52 -r1.22
Files /tmp/cvshMJBNO and /tmp/cvskklSoz differ
> cvs -q log -S -rMV6_8_0_43:: ms/conf/spring/web.xml
I would expect this to work since the options for cvs log are:
Usage: cvs log [-lRhtNb] [-r[revisions]] [-d dates] [-s states]
-l Local directory only, no recursion.
-b Only list revisions on the default branch.
-h Only print header.
-R Only print name of RCS file.
-t Only print header and descriptive text.
-N Do not list tags.
-S Do not print name/header if no revisions selected. -d,
-s, & -w have little effect in conjunction with -b, -h,
-t without this option.
-r[revisions] A comma-separated list of revisions to print:
rev1:rev2 Between rev1 and rev2, including rev1 and rev2.
rev1::rev2 Between rev1 and rev2, excluding rev1.
rev: rev and following revisions on the same branch.
rev:: After rev on the same branch.
:rev rev and previous revisions on the same branch.
::rev rev and previous revisions on the same branch.
rev Just rev.
branch All revisions on the branch.
branch. The last revision on the branch.
-d dates A semicolon-separated list of dates
(D1<D2 for range, D for latest before).
-s states Only list revisions with specified states.
-w[logins] Only list revisions checked in by specified
(Specify the --help global option for a list of other help options)
It appears that "-rMV6_8_0_43::" should show me revisions "After
MV6_8_0_43" on the same branch", but instead I get nothing.
Am I missing something, or is this a bug? Is there an easier way to
- CVS Log unexpected results,