Diffing RELENG_6 between two dates from cvs

Erik Trulsson ertr1013 at student.uu.se
Tue Jan 16 00:06:18 UTC 2007

On Tue, Jan 16, 2007 at 12:51:19AM +0100, Jeremie Le Hen wrote:
> Hi list,
> (Please Cc: my in your replies.)
> I am looking for a way to achieve what I would intuitively write:
>     cvs diff -r RELENG_6 -D <date1> -D <date2>
> Some people would point me to the info-cvs mailing-list for this
> question doesn't seem to be related to FreeBSD.  Nonetheless FreeBSD 6
> has cvs 1.11.17-FreeBSD and I am pretty sure that cvs guys would to me
> to use a newer version of cvs: this is indeed a FAQ [1].  Starting at
> version 1.12.12, cvs can handle the following syntax:
>     cvs diff -r <tag>:<date> -r <tag>:<date>
> [1] http://ximbiot.com/cvs/wiki/index.php?title=CVS_FAQ#How_do_I_get_a_date_based_diff_on_a_branch.3F
> The proposed workaround works but it implies to have write access to
> the repository.  Moreover tagging the whole src/ tree is a bit overkill
> for such a task.
> I've read somewhere it is possible to use "cvs diff -j <date>:<tag>",
> but I wasn't able to confirm this.

Why did you not just try it?  Yes it works fine, the syntax being
cvs diff -j <tag1>:<date1> -j <tag2>:<date2> [files]

It is even documented in the cvs(1) manpage.

(This might be a FreeBSD specific extension to CVS and thus not appear
in the documentation for the "official" CVS releases.  Not sure about that.)

> Any clue or pointers are welcome.
> Thank you.
> Best regards,
> PS: In the meantime, one can use "cvs update -r <branch> -D <date>" but
> "cvs status" reveals only a sticky tag.  The sticky date is lost,
> probably because the CVS/Entries file can handle either flag "T<tag>"
> or "D<date>" and not both together.   Does any one know how to
> workaround this, or if it has been addressed in later version of cvs ?

<Insert your favourite quote here.>
Erik Trulsson
ertr1013 at student.uu.se

More information about the freebsd-questions mailing list