[Top][All Lists]

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

Re: Patch for making CommitID configurable

From: Peter Backes
Subject: Re: Patch for making CommitID configurable
Date: Wed, 27 Apr 2005 20:42:35 +0200


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, rtc@helen.PLASMA.Xg8.DE

reply via email to

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