[darcs-users] revision identifiers

Nicolas Pouillard nicolas.pouillard at gmail.com
Thu Mar 27 10:16:05 UTC 2008


Excerpts from Max Battcher's message of Thu Mar 27 05:16:57 +0100 2008:
> Declan Naughton wrote:
> > In revision control systems like Mercurial and git, every time the
> > repository is updated (recorded to in darcs terms) a new revision
> > identifier is associated with it's new state, so that it can be
> > referred to for checkouts and such.
> > 
> > In darcs, users MUST MANUALLY use tags, this I consider quite a
> > downfall. Would it be a bad or a good idea for darcs to checksum the
> > context and record this with records, and, (being the revision
> > identifier) printing this out in 'darcs changes', providing for 'darcs
> > get --rev=xxxxxxxxx' etc?
> > 
> > Or what am I overlooking?
> 

[...]

> 
> Tags are indeed the way to name a specific collection of patches and 
> there is basically no overhead for tags and creating a new tag takes 
> only time to name it, so I don't see manually "required" tags as that 
> much of a downfall anyway.

However  tags  have  a  drawback. They remove some commutations possibilities!
Otherwise  one  could automatically tag after every record using the digest of
the pristine tree (technique referred as "Tagging like crazy").

Having a tag in the way means that commands like:
  - amend-record
  - unrecord
  - obliterate

Won't let you work on an old change unless you've obliterated tags in the way.

Also  when  doing  cherry  picking  (or cherry pushing :) of changes, you will
notice  that  tags  will  be  quickly  skipped  once  you've refused to move a
certain change.

However  it  would be nice to know if this "Tagging like crazy" approach worth
some  interest  for  people  working  on  big  projects. With this enabled the
default  behavior will be more heavy, but perhaps faster, and less error prone
for  new  users  (that tends to ask hard things to darcs). Then advanced users
could learn to obliterate tags in order to play with the order of them.

This   could   take   form   of   an   option   for  record  like  --auto-tag,
--tag-with-pristine-digest...

Cheers,

-- 
Nicolas Pouillard aka Ertai
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 194 bytes
Desc: not available
Url : http://lists.osuosl.org/pipermail/darcs-users/attachments/20080327/7c3c26f6/attachment.pgp 


More information about the darcs-users mailing list