Hello, On 27 Apr 2005 at 11:08, Mark D. Baushke wrote:
> global_session_id = Xasprintf ("%x%08lx%04x", (int)getpid(), > (long)time (NULL), rand()&0xFFFF); (long)time(NULL), getpid(): not portable. rand()&0xFFFF: makes commit IDs probabilistic, not unique. Why not simply keep a counter in a file which is being increased on each commit and used as the commit ID? This avoids the probabilistic aspect and is entirely portable. It was also the solution used for rcsfreeze. The location could be a config file option. > We are restricting the use of a '.' in the commitid, but we could > probably relax the encoding to allow a '%' sign and use a %2e escape > if you wanted to add in a FQDN for the hostname. What is the reason for '.' being disallowed? > CVS has added stuff to the RCS format in the past, even though those > options are usually disabled: "permissions" and "hardlinks". I would love to see any new feature adding to the RCS file format being handled in exactly the same way. > CVSNT has added "commitid" and "mergepoint" newphrases. It is entirely > possible that CVS could add support for a "mergepoint" newphrase in some > future release. > CVSNT has also extended the -k flags to allow for UTF-8 characters. I guess -k and mergepoint are only being written on user request. (for example if he sets the new keyword or if he requests a mergepoint to be written explicitely.) This is entirely okay. The difference is that commitid is being written on each commit, while it was not like that in the past, and currently in a way that does not allow the user to prevent that. -- Peter 'Rattacresh' Backes, [EMAIL PROTECTED] _______________________________________________ Bug-cvs mailing list Bug-cvs@gnu.org http://lists.gnu.org/mailman/listinfo/bug-cvs