[cvsnt] Re: how to get the branch information before

Bo Berglund bo.berglund at telia.com
Tue Nov 8 18:43:12 GMT 2005


On Mon, 7 Nov 2005 18:25:45 -0500, <cvssteve at diablo-technologies.com>
wrote:

>Thanks Tony on your respective answers. Looks like I need to RTFM for most
>of them...
>
>Looks like I'll have to wrapper the client side for the cvs add stuff.
>
>Is it documented anywhere what the structure of the /tmp/cvsserv... files
>are, during an operation? There's a whole load of info about the internal
>CVS files in Section 2.3 but is this it?
>

Hi again,
I have now examined what is going on when the commitinfo file does its
action.
First, when the script is called cvs has created a working directory
in the temp dir set up for CVSNT to use. This working directory is
named 'cvs-serv<number>' like cvs-serv1468.
The number is the PID of the running cvs process and this can be
extracted on the command line using the $CVSPID variable.
The value passed is the hex representation of the PID number so 1468
is passed as 000005bc.
So the folder to look inside is:
<$TEMP>/cvs-serv<$CVSPID>

Second, in the working dir are all of the files being committed and
below one level is the CVS subdir containing the metadata:
Tag
Repository
Entries.Extra
Entries

I think that Tag is only there if the folder committed from is on a
branch.

The Entries file contains a list of the files being committed and also
the tag if any. In my example test (4 lines, might wrap):

/ThirdFile.txt/1.29/Tue Jun 14 17:29:23 2005//
/SecondFile.txt/1.20.2.31/Sat Nov  5 19:18:41 2005/-kkv/TBranch_Tst3
/ModuleXXdoc.txt/1.68.2.32/Mon May 23 21:29:15 2005//TBranch_Tst4
/BranchAddFile.txt/1.1.2.6/Tue Nov  8 07:32:57
2005/-kkv/TBranch_MergeTest

Notice how the files have different tags, that is because this is the
situation in my sandbox.

Also notice that the whole working dir will be removed when the cvs
command completes.

Hope this clears the sitation.



/Bo
(Bo Berglund, developer in Sweden)



More information about the cvsnt mailing list