gnu-arch-users
[Top][All Lists]
Advanced

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

Re: [Gnu-arch-users] Re: Making --setup default in tag and import


From: Mikhael Goikhman
Subject: Re: [Gnu-arch-users] Re: Making --setup default in tag and import
Date: Wed, 9 Feb 2005 01:16:08 +0000
User-agent: Mutt/1.4.2.1i

On 09 Feb 2005 10:25:13 +1100, Ben Finney wrote:
> 
> On 08-Feb-2005, Mikhael Goikhman wrote:
> > On 08 Feb 2005 10:45:27 -0500, Aaron Bentley wrote:
> > > Stefan Monnier wrote:
> > > >Too bad.  It's not like [undo in the archive is] fundamentally
> > > >impossible/difficult.
> > > 
> > > Actually, it *is* fundamentally impossible.  The arch model is that
> > > each revision name corresponds with one and only one changeset or
> > > import.  Forever and ever.  Break that rule, and you get to keep
> > > both pieces.
> > 
> > These two requirements do not really conflict in any fundamental way.
> > You may redo the past if you also redo or remove all its dependencies.
> 
> This then breaks the "one and only one [...] forever and ever" that
> Aaron said, above.

This is a philosophical question. From any perspective, the new rewritten
history is this "one and only one [...] forever and ever". It always was
this one, because no trace of any previous history exists in the archive.

> Once something has happened in the archive it *has happened*; any "undo"
> or "redo" is a further change, recorded in addition to the original.
> That's the model on which GNU Arch is founded; a deliberate design
> decision.
> 
> You seem to be suggesting technical "solutions" to subvert something
> that is a fundamental part of the design of GNU Arch.

Well, strictly speaking, arch is full of technical "solutions" to change
the archive after the fact. Think for example about archive-fixup,
.listing files, signing and resigning, pruning logs, modifying tree logs,
not to speak about cacherevs. [The tree logs do not affect archive
directly, but they still "subvert" this fundamental part of the design.]

I think it will help if you look at this differently. Rewritting the
history we speak about completely accomplish this part of the design.
It just subverts the environment.  Now, if you suggest that restoring
the environment may be hard in the general case (update all caches,
libraries, mirrors, remove all affected trees and so on), then I agree.

Also, it will help if you note that I only advocate removing of the last
changeset. I don't advocate changing any changeset, so it is different
from "further change, recorded in addition to the original".

Regards,
Mikhael.




reply via email to

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