Messages in this thread | | | Date | Tue, 28 Jun 2005 17:00:27 +0200 | From | Petr Baudis <> | Subject | Re: Mercurial vs Updated git HOWTO for kernel hackers |
| |
Dear diary, on Fri, Jun 24, 2005 at 02:38:19PM CEST, I got a letter where Christopher Li <hg@chrisli.org> told me that... > On Fri, Jun 24, 2005 at 08:41:01AM +0200, Petr Baudis wrote: > > > 5.1) undo the last commit or pull > > > > > > $ hg undo > > > > $ cg-admin-uncommit > > > > Note that you should never do this if you already pushed the changes > > out, or someone might get them. (That holds for regular Git too.) See > > > > $ cg-help cg-admin-uncommit # (or cg-admin-uncommit --help) > > > > for details. (That's another Cogito's cool feature. Handy docs! ;-) > > > > Does it still works if the last commit was interrupted or due to error for some > reason?
If the last commit was interrupted, it didn't happen, so your tree stays in the same state as before doing the commit, as well as the repository. You can just try again. If you want to get rid of dirty stuff, cg-cancel.
> Undo pull is pretty cool because you might pull a lot of commit > in one blow. Get rid of commit one by one is going to be painful. Some times > the object you pull has more than one chain of history it will be very nasty > if you want to clean it up.
If it was a tree merge, cg-admin-uncommit will undo it. If it was fast-forward merge, there is no direct way to uncommit it, but you can find the first fast-forwarded commit and pass it as argument to cg-admin-uncommit; it will then rewind all the commits up to (including) the given commit.
> Mercurial's undo is taking a snapshot of all the changed file's repo file length > at every commit or pull. It just truncate the file to original size and undo > is done.
"Trunactes"? That sounds very wrong... you mean replace with old version? Anyway, what if the file has same length? It just doesn't make much sense to me.
-- Petr "Pasky" Baudis Stuff: http://pasky.or.cz/ <Espy> be careful, some twit might quote you out of context.. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |