cvs

Doug Hardie doug at mail.sermon-archive.info
Thu Sep 29 05:02:17 UTC 2016


> On 28 September 2016, at 20:38, David Christensen <dpchrist at holgerdanske.com> wrote:
> 
> On 09/28/2016 06:06 PM, Doug Hardie wrote:
>> I am using cvs for a number of projects and have been digging through the documentation, but not figuring out how to do what I need.  There are multiple files in each project.  All are entered into cvs and are updated fairly often.  Some of the revision numbers are over 100.  All I have done is commits to the files so far.  
>> 
>> I need to be able to identify the files in a specific version.  For example on some date, I need to say all the current files belong to version x.  Later another version x+1 and so forth.  I also need to be able to pull out all the file from version x.  I suspect there is an easy way to do this, but it has escaped me so far.
> 
> CVS manages revision numbers on individual files.  Some version control
> systems manage version numbers on sets of files (Git, Mercurial?).
> Still others number both individual files and sets of files (MKS SI).
> 
> 
> But, CVS provides "tags" for working with sets of files:
> 
>    info cvs
> 
>    cvs --help tag
> 
> 
> You can see the tags on a particular file with:
> 
>    cvs log FILENAME
> 
> 
> When I want to create a release of one of my projects, say revision
> 1.108, I check in all the files and then run:
> 
>    cvs tag -c r1_108
> 
> This applies the tag "r1_108" to the current revision of the files in
> the working set.  (The -c option ensures that they are checked in, to
> reduce operator errors.)
> 
> 
> If I later want to check out all the files from a particular release:
> 
>    cvs co -r r1_108
> 
> (Note that CVS will mark the files as "sticky", which adds complexities
> I avoid by not editing them.)
> 
> 
> CVS also has the ability to check out files by date, but I have never
> tried that.  If your files don't have tags, perhaps you can check them
> out by date and then add tags.  Be sure to back up your CVS repository
> before mucking about.
> 
> 
> David
> 
> 
> p.s. I learned CVS from an earlier version of this book.  The current
> edition (3 e.) is available as a PDF download:
> 
>    http://cvsbook.red-bean.com/

Thank you for the detailed response.  It makes sense now.  I am in the middle of working my way through that book.  I should have asked about this years ago.




More information about the freebsd-questions mailing list