git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Theodore Tso <tytso@MIT.EDU>
To: Florian Weimer <fw@deneb.enyo.de>
Cc: git@vger.kernel.org
Subject: Re: What I miss from Cogito...
Date: Sun, 23 Mar 2008 20:16:17 -0400	[thread overview]
Message-ID: <20080324001617.GB24943@mit.edu> (raw)
In-Reply-To: <87r6e1b6c8.fsf@mid.deneb.enyo.de>

On Sun, Mar 23, 2008 at 08:14:47PM +0100, Florian Weimer wrote:
> 
> Personally, I'm not all that happy with the multiple different meanings
> of "git reset" and "git checkout", either.  Depending on the parameters,
> the two comments manipulate both the contents of the working copy, or
> the location at which the working copy is hooked in the history.  If we
> need to have two separate commands for this, it would make more sense to
> draw distinction between the two aspects, and not the mess we have now.
> OTOH, it's probably too late for that.

Yeah, it's not at all intuitive.  I've been using git for quite some
time and had *absolutely* *no* *idea* that "git checkout <treeish> --
path" did what "bk revert" and "hg revert" does.  In fact, I'm pretty
sure I remember asking for this functionality a while back, and being
told the right answer was "git show HEAD:pathname > pathname", and I
kept on typing it until I got sick and tired of it, and so I created
my short-hand shell script.  

And the fact that Peter was using "git reset --hard -- pathname" is
another hint that it isn't at *all* obvious that "git checkout" does
two completely different things, and it's not something that you're
likely to intuit from the name or looking at the top-level git man
page (where the summary in the top-level git manpage is, "checkout and
switch to a branch").

If we were going to separate the two commands out, I'd use the name
"git revert-file", because that's what people who are coming from bk
or hg are used to (where "revert" means to undo the local edits done
to a particular file, as opposed to the git meaning of undoing a
particular commit).

						- Ted

  reply	other threads:[~2008-03-24  0:17 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-03-23 17:15 What I miss from Cogito H. Peter Anvin
2008-03-23 17:38 ` Theodore Tso
2008-03-23 17:46   ` H. Peter Anvin
2008-03-27  2:36     ` Petr Baudis
2008-03-23 18:21   ` Luciano Rocha
2008-03-23 19:00     ` Mike Hommey
2008-03-23 19:07       ` Bruce Stephens
2008-03-23 19:07       ` Mike Hommey
2008-03-23 19:14     ` Florian Weimer
2008-03-24  0:16       ` Theodore Tso [this message]
2008-03-24  1:40         ` Björn Steinbrink
2008-03-24  2:14           ` Theodore Tso
2008-03-24  2:53             ` Junio C Hamano
2008-03-24  2:57             ` Björn Steinbrink
2008-03-24  3:06             ` [PATCH] Documentation/git-checkout: Update summary to reflect current abilities Julian Phillips
2008-03-24 16:49               ` Junio C Hamano
2008-03-24  3:06                 ` Julian Phillips
2008-03-23 18:31 ` What I miss from Cogito Johannes Schindelin
2008-03-23 18:34 ` Junio C Hamano
2008-03-23 18:58   ` H. Peter Anvin
2008-03-23 18:59     ` Junio C Hamano
2008-03-23 19:16 ` Daniel Barkalow
2008-03-23 19:19   ` H. Peter Anvin

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=20080324001617.GB24943@mit.edu \
    --to=tytso@mit.edu \
    --cc=fw@deneb.enyo.de \
    --cc=git@vger.kernel.org \
    /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).