bug-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

CVS manual, tracking 3rd party sources


From: Stefan Scherer
Subject: CVS manual, tracking 3rd party sources
Date: Mon, 14 May 2001 09:49:43 +0200

In the Cederqvist CVS manual, chapter 13, "Tracking third-party sources",
there is no hint how to handle files that are removed by the vendor.

In section 13.2 there are two 'cvs checkout' commands.
They seem to be equivalent, but they work different if some 
files have disappeared in the vendor sources.


Here is an example session:

Importing the first version of the vendor sources, 
we have eg. two files:

   $ ls

   test.c
   old.c

   $ cvs import -ko -m "version 1.0" test TEST TEST_1_0

   N test/old.c
   N test/test.c

   No conflicts created by this import


Now I've edited the test.c in a working copy:

   $ cvs checkout test
   $ vi test.c
   $ cvs commit test.c


Importing the second version of the vendor sources,
we now have one file removed (old.c) and another added (new.c):

   $ ls

   test.c
   new.c

   $ cvs import -ko -m "version 1.1" test TEST TEST_1_1

   C test/test.c
   N test/new.c


   1 conflicts created by this import.
   Use the following command to help the merge:

        cvs checkout -jTEST:yesterday -jTEST test


Using the suggested command with another time difference
shows me only the conflicts, but not the removed files.

   $ cvs checkout "-jTEST:2 minutes ago" -jTEST test

   cvs checkout: Updating test
   U test/new.c
   RCS file: /home/test/test.c,v
   retrieving revision 1.1.1.1
   retrieving revision 1.1.1.2
   Merging differences between 1.1.1.1 and 1.1.1.2 into test.c
   rcsmerge: warning: conflicts during merge

In the working copy there is still the old.c file.


Using the second command from section 13.2 instead, cvs
also helps removing files. So these commands are not equivalent
as mentioned in the manual.

   $ cvs checkout -jTEST_1_0 -jTEST_1_1 test

   cvs checkout: Updating test
   U test/new.c
   U test/old.c
   cvs checkout: scheduling test/old.c for removal
   U test/test.c
   RCS file: /home/test/test.c,v
   retrieving revision 1.1.1.1
   retrieving revision 1.1.1.2
   Merging differences between 1.1.1.1 and 1.1.1.2 into test.c
   rcsmerge: warning: conflicts during merge


The second command seems better for tracking third-party sources.
And there is no time problem ('yesterday'):

   cvs checkout -jPREVIOUS_VENDOR_RELEASE -jVENDOR_RELEASE module

Perhaps you could add a notice to that section in the manual.

Best Regards,

Stefan Scherer



-- 
Stefan Scherer
S.E.P.P.  AG & Co.    Tel.  : +49 (0) 9195-926-128
Lohmuehlweg 4         Fax   : +49 (0) 9195-1739
D-91341 Roettenbach   MailTo:stefan_scherer@sepp.de
Germany               WWW   : http://www.sepp.de



reply via email to

[Prev in Thread] Current Thread [Next in Thread]