monotone-devel
[Top][All Lists]
Advanced

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

[Monotone-devel] Re: newbie question - SHA1 vs serials


From: Bruce Stephens
Subject: [Monotone-devel] Re: newbie question - SHA1 vs serials
Date: Wed, 20 Apr 2005 20:10:23 +0100
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux)

"K. Richard Pixley" <address@hidden> writes:

[...]

> To provide globally unique serials, one would need to include some
> representation of the location at which an event occurred.  In this
> case, I'd suggest the domain name of the machine involved.  So
> something like 1:monotone.venge.com, 2:monotone.venge.com, etc.  If
> each repository used it's own name, (presumably it's domain name in
> most cases), and kept it's own list of serials, wouldn't this both
> provide a guaranteed unique id as well as providing that
> oh-so-sought-after monotonically increasing number people so love to
> see?

The version numbers in (say) CVS have two separable uses: they're nice
short globally valid identifiers; and they have meaning, 1.38 is after
1.35, and between the two there's 1.36 and 1.37.

Hashes aren't the only way of specifying revisions in monotone.  There
are also selectors.  For example, the revision that Richard mentioned,
e018e6f9690d07166a0eecef6627493445db12ad, can also be identified as
"a:address@hidden/b:net.venge.monotone/d:2005-04-19/i:e018".

Admittedly that's even longer than the hash, but it can be shorter:
"jon/monotone/2005-04-19/e018" is one possibility.  That's not
necessarily unique, but it works at present (and given the presence of
the date, will probably continue to do so).

There's little incentive to use such things at present, but one of
these days someone will get around to changing monotone so that
reporting such selectors instead of or as well as hashes is possible,
and then it ought to be as easy to cut and paste something that has
some meaning in addition to uniquely identifying.  

My guess is that such things could be made about as convenient as
other numbering systems.

The other useful property doesn't seem to be something you're
attacking, but I seem to remember graydon came up with some local tree
numbering that would offer a way to talk about relative revisions (it
wouldn't be useful except in a single repository, at a single point in
time, but it would allow easy ways to refer to the second revision
after a particular one, for example, and that kind of thing).




reply via email to

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