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

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

Re: [Gnu-arch-users] Removing the last changeset(s) from the archive


From: Brian May
Subject: Re: [Gnu-arch-users] Removing the last changeset(s) from the archive
Date: Mon, 15 Nov 2004 09:03:57 +1100
User-agent: Gnus/5.1006 (Gnus v5.10.6) Emacs/21.3 (gnu/linux)

>>>>> "Karl" == Karl O Pinc <address@hidden> writes:

    Karl> On 2004.11.14 12:57 Aaron Bentley wrote:
    >> Karl O. Pinc wrote:
    >>> I'll fix the bug and commit the change, but do something
    >>> wrong and accidently include portions of my larger problem
    >>> in the commit.  It'd be nice to be able to 'do over'.
    >> How about tla replay --reverse $REVSIION; tla sync-tree $REVISION;
    >> tla commit -s "undid botched bugfix"?

    Karl> The bugfix was not botched, the archive is botched.  I want
    Karl> the tree I've got, I just want to make two commits instead of one.
    Karl> (Or make one partial commit now and others later.)

So make that 3 commits instead:

1 commit is the botched one.

1 commit reverses the botched one so that everything is exactly the way
it was before.

1 commit is the commit exactly the one you originally intended.

That way:
* you have complete history of everything (including mistake).
* you don't mess up other archives no matter how up-to-date they are.
* you still have 1 small patch for the bug fix.

While there might be circumstances where you have to physically delete
a changeset (e.g. if you accidently commit an excessively large or
private file to a public archive), I don't think this is one of them.

It could also be argued that you should always run "tla changes
--diffs" before "tla commit" to minimize the chance of a mistake
(although that doesn't help if you forget to include the filename in
"tla commit").
-- 
Brian May <address@hidden>




reply via email to

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