From: "Shawn O. Pearce" <spearce@spearce.org>
To: Nicolas Pitre <nico@cam.org>
Cc: Wincent Colaiuta <win@wincent.com>, Jeff King <peff@peff.net>,
Joshua Jensen <jjensen@workspacewhiz.com>,
git@vger.kernel.org
Subject: Re: Reverting an uncommitted revert
Date: Wed, 20 May 2009 07:17:09 -0700 [thread overview]
Message-ID: <20090520141709.GO30527@spearce.org> (raw)
In-Reply-To: <alpine.LFD.2.00.0905200853010.3906@xanadu.home>
Nicolas Pitre <nico@cam.org> wrote:
> On Wed, 20 May 2009, Wincent Colaiuta wrote:
> > El 20/5/2009, a las 5:35, Nicolas Pitre escribi?:
> >
> > > Having a "trash" reflog would solve this unambiguously. That could also
> > > include your index example above. However, in the index case, I'd
> > > record a reflog entry only if you're about to discard a previously non
> > > committed entry. If you do:
> > >
> > > $ git add foo
> > > $ git add bar
> > > $ git commit
> > > $ hack hack hack
> > > $ git add foo
> > >
> > > then in this case there is nothing to be lost hence no additional entry
> > > in the "trash" reflog.
> >
> > That's true in the example you provide, but it doesn't really handle Jeff's
> > initial example ("git add" twice on the same file), where it is possible to
> > throw away intermediate state (by overwriting).
>
> Did I disagree with Jeff's original example?
No, but if you don't read closely enough to notice that the first
add affects path "foo" and the second add "bar", you might miss
what you were trying to say. I almost thought you disagreed with
Peff until I read your example a 2nd time. :-)
You did say "uncommitted entry causes reflog append", so in Peff's
original example of "git add a; vi a; git add a", we should be
creating a reflog entry for that first added state, which is clearly
not a disagreement.
FWIW, I think this is a great idea, but lack the time to code it
myself, otherwise I probably would start hacking on it right now.
--
Shawn.
next prev parent reply other threads:[~2009-05-20 14:17 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-05-20 2:34 Reverting an uncommitted revert Joshua Jensen
2009-05-20 3:10 ` Nicolas Pitre
2009-05-20 3:21 ` Jeff King
2009-05-20 3:35 ` Nicolas Pitre
2009-05-20 3:38 ` Jeff King
2009-05-20 4:58 ` Ping Yin
2009-05-20 9:15 ` Wincent Colaiuta
2009-05-20 10:16 ` Jakub Narebski
2009-05-20 12:53 ` Nicolas Pitre
2009-05-20 14:17 ` Shawn O. Pearce [this message]
2009-05-20 16:55 ` Eric Raible
2009-05-20 17:59 ` Junio C Hamano
2009-05-20 18:19 ` Nicolas Pitre
2009-05-20 18:25 ` Nicolas Pitre
2009-05-20 18:57 ` Shawn O. Pearce
2009-05-21 6:16 ` Junio C Hamano
2009-05-20 18:21 ` Jakub Narebski
2009-05-20 15:23 ` Wincent Colaiuta
2009-05-20 15:47 ` Nicolas Pitre
2009-05-20 16:13 ` Sverre Rabbelier
2009-05-20 16:58 ` Jeff King
2009-05-20 18:04 ` Nicolas Pitre
2009-05-20 18:08 ` Sverre Rabbelier
2009-05-21 3:47 ` Jeff King
2009-05-20 17:50 ` Junio C Hamano
2009-05-20 18:27 ` [PATCH] write-tree --ignore-cache-tree Junio C Hamano
2009-05-21 0:40 ` [PATCH 1/2] cache-tree.c::cache_tree_find(): simplify inernal API Junio C Hamano
2009-05-21 0:44 ` [PATCH 2/2] Optimize "diff-index --cached" using cache-tree Junio C Hamano
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20090520141709.GO30527@spearce.org \
--to=spearce@spearce.org \
--cc=git@vger.kernel.org \
--cc=jjensen@workspacewhiz.com \
--cc=nico@cam.org \
--cc=peff@peff.net \
--cc=win@wincent.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).