Bookmarks - Tutorial / Git comparison

Tony Mechelynck antoine.mechelynck at gmail.com
Mon Jul 12 13:13:30 UTC 2010


On 12/07/10 14:21, Daniel Carrera wrote:
> I'd like to make a public correction:
>
> An important design feature of Mercurial is that it will never delete
> or overwrite a revlog out of concern for data safety. Therefore, the
> only way to perform a "destructive" operation in Hg (e.g. delete a
> branch) is to use clones. The only exception is rollback - this is the
> only Hg command capable of losing data.
>
> This is an interesting design decision, and it points to a difference
> between Git and Hg:  If you *want* to destroy data, Hg does require
> you to use clones. Whereas Git is willing to perform destructive
> operations on its own.
>
> Destroying data is the only way in which Mercurial might require you
> to use clones.
>
> Daniel.

There are, however, extensions (among which rebase, mq, transplant IIRC) 
which will rewrite your history (as a result of a specific command); but 
hg will never rewrite history on its own indeed: the base idea remains 
that Mercurial history is cast in bronze.


Best regards,
Tony.
-- 
MONK: ... and the Lord spake, saying, "First shalt thou take out the 
Holy Pin,
       then shalt thou count to three, no more, no less.  Three shalt be the
       number thou shalt count, and the number of the counting shalt be 
three.
       Four shalt thou not count, neither count thou two, excepting that 
thou
       then proceed to three.  Five is right out.  Once the number 
three, being
       the third number, be reached, then lobbest thou thy Holy Hand 
Grenade of
       Antioch towards thou foe, who being naughty in my sight, shall 
snuff it.
                  "Monty Python and the Holy Grail" PYTHON (MONTY) 
PICTURES LTD



More information about the Mercurial mailing list