Dates in CVS
Dates can be specified in all of the following ways:
1 month ago
2 hours ago
400000 seconds ago
last year
last Monday
yesterday
a fortnight ago
3/31/92 10:00:07 PST
January 23, 1987 10:05pm
22:00 GMT
Dates seem to be completely orthogonal to tag names; they form
another name space of tags. In fact, they are even sticky like
tags: when you checkout a file from a particular date, cvs keeps that
on the file when you commit it. (You must "cvs update -A" to remove
the sticky date.) To checkout from a particular
date,
cvs co -D"January 25" spin/compiler/Makefile
"cvs history" can be used to find out when files were committed.
Unfortunately, it seems that this includes commits to local branches.
However, the output indicates in which directory the commit occurred,
so it's pretty easy to tell if the commit was in a merge or for a
branch.
cvs history -c -a spin/compiler/Makefile
The "-c" means report on commits; the "-a" means all users; Here are
some sample output lines from the above command:
M 01/28 06:58 +0000 pardy 1.6.116.4 Makefile spin/compiler == /af
s/cs.washington.edu/project/spin/pardy/spin-13
M 01/28 22:47 +0000 savage 1.7 Makefile spin/compiler == /af
s/cs.washington.edu/project/spin/savage/s13
M 01/29 23:36 +0000 savage 1.8 Makefile spin/compiler == /af
s/cs.washington.edu/project/spin/savage/s13
M 10/31 07:26 +0000 whsieh 1.5.4.1 Makefile spin/compiler == /af
s/cs.washington.edu/project/spin/whsieh/s5/spin/compiler
cvs history -c -a -t spin-15 spin/compiler/Makefile
can be used to get all commit records after spin-15.
whsieh@cs.washington.edu
February 26, 1996