Re: Commit ID Enhancement
Derek Robert Price <[email protected]> Wed, 26 May 2004 09:58:03 -0400
| Newsgroups | gmane.comp.version-control.cvs.general,gmane.comp.version-control.cvs.bugs |
|---|---|
| Organization | Ximbiot <http://ximbiot.com> |
| Message-ID | <[email protected]> |
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Mark D. Baushke wrote: > Derek Robert Price <[email protected]> writes: > > >Jim.Hyslop wrote: > > >>Derek Robert Price wrote: > >> > >>>It occurred to me that a "Commit ID" implemented as a tag might > make a > >>>useful addition to the CVS feature-set. > >> > >> > >>CVSNT has a unique commit ID, but it doesn't look like it's > > >implemented as a > > >>tag. The sample log at http://www.cvsnt.org/wiki/MergePoint shows, in > > >part: > > >>---------------------------- > >>revision 1.8 > >>date: 2003/11/06 21:53:13; author: gstarret; state: Exp; lines: > +0 -0; > >>kopt: > >>kv; commitid: 257f3faac2c9c824; mergepoint: 1.6.2.1; > >>changed for some reason > >>---------------------------- > >> > >>Does this come close to what you had in mind? > > > >I suppose. As long as the commitid would be given special > >properties there may not be any good reason to treat it > >exactly like a tag otherwise, but there would be some > >overlap. > > > Hmmm... I thought the best part of the commitid feature was > that it set an environment variable COMMITID that could be > used to better allow commitinfo/verifymsg/loginfo to share > information between themselves... That is interesting. > I suspect that the commitid -- a unique per-commit value > which is based on the pid, time and a rand() sixteen bit > value in hex format may also be used where a symbolic tag > exists (e.g., cvs diff -u -r@77653f84ac702eeb) to address > only those files handled by the 77653f84ac702eeb cvs commit. This is what I had in mind. The `@' looks like the character to escape the current tag namespace I was talking about. I also thought that cvs up -j@77653f84ac702eeb should do some implicit calculations and only back out this one commit rather than calculating a GCM, were one available. > >What sort of mergepoint processing does CVSNT do? The link you sent > >appears to be down just now. > > > Well, here is the link I found... > > http://www.cvsnt.org/wiki/MergePoint?action=highlight&value=mergepoint Am I blocked from the CVSNT site in some way? I still can't get through and don't think I have been able to in a week or two. > << > 1. What is a mergepoint, and how does one use it? > > Mergepoints help cvsnt find the common ancestor when trying > to diff a file, which greatly reduces the effort required to > merge in branches. It is automatically saved by cvsnt when > you merge changes from one branch to another. Just make sure > you commit after merging (before performing any other > merges) and cvsnt will save the mergepoint field with the > update. Ah! That is interesting! Not necessarily complete, you'd need two endpoints for that, but interesting! Derek - -- *8^) Email: [email protected] Get CVS support at <http://ximbiot.com>! -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFAtKJqLD1OTBfyMaQRAr3FAJ93kN7BIl1v+hBm/PUchMgp5e4E/gCg6tlg rPFWWMOlBlJsTW4op9YDPz4= =Ellc -----END PGP SIGNATURE-----