From: Kevin Bracey <kevin@bracey.fi>
To: Junio C Hamano <gitster@pobox.com>
Cc: Atsushi Nakagawa <atnak@chejz.com>, git@vger.kernel.org
Subject: Re: Reset by checkout?
Date: Tue, 03 Jun 2014 22:48:49 +0300 [thread overview]
Message-ID: <538E26A1.5020509@bracey.fi> (raw)
In-Reply-To: <xmqqmwdv2d08.fsf@gitster.dls.corp.google.com>
On 03/06/2014 00:54, Junio C Hamano wrote:
>
> Not that I can think of a better way to update these descriptions,
> and not that I am opposing to update these descriptions to make it
> easier for new people to learn, but I am not sure if these "treat
> ORIG_HEAD and the changes since that commit as separate entities"
> is a good approach to do so.
>
> Somewhat frustrated, not by your patch but by being unable to
> suggest a better way X-<.
>
>
I know. I started off myself knowing what I meant to say, and then got
bogged down somewhat trying to be detailed enough for a full
explanation. I think it's just inherently very hard for anyone to
visualise what these do in the /general/ case.
This is one of those commands where the structure of a man page gets in
the way. We have to give a summary of what the mode options /do/, but
that's not what people want to know. They want to know what they're /for/.
(And, to some extent, reset, like checkout, is two separate commands.
One being the path manipulator, the other being the HEAD manipulator.
Just bogs us down further).
I think these are the most important HEAD resets, covering 95%+ of uses:
git reset --soft HEAD~<n>
git reset HEAD~<n>
git reset --keep HEAD~<n>
git reset --keep ORIG_HEAD
git reset --keep @{<n>}
git reset --keep <some other arbitary place>
(and possibly
git reset --merge
although I think this should be fully covered by "git xxx --abort" -
maybe a couple of those missing like git stash pop/apply --abort?)
Anything more than those, I think, are pretty far-fetched. I can't 100%
grok "--soft/--mixed" onto a different branch, for example. (But at
least we do define those cases in the A/B/C/D "discussion" section for
the real geeks.)
Maybe we just need to tighten up the EXAMPLES section? Give it
easy-to-locate <path>/--soft/--mixed/--keep subheadings, covering all
those common use cases (in clean trees...), including a before/after git
status views. Then normal users could skip the top technical section
waffling about indexes and go straight there instead.
Kevin
next prev parent reply other threads:[~2014-06-03 20:08 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-05-31 5:46 Reset by checkout? Atsushi Nakagawa
2014-05-31 7:03 ` Andreas Schwab
2014-06-01 2:56 ` Atsushi Nakagawa
2014-05-31 7:27 ` Kevin Bracey
2014-06-01 4:26 ` Atsushi Nakagawa
2014-06-01 8:45 ` Kevin Bracey
2014-06-02 21:54 ` Junio C Hamano
2014-06-03 19:48 ` Kevin Bracey [this message]
2014-06-03 21:48 ` Felipe Contreras
2014-06-07 4:54 ` Atsushi Nakagawa
2014-06-07 14:52 ` Philip Oakley
2014-06-09 20:12 ` Kevin Bracey
2014-06-07 4:55 ` Atsushi Nakagawa
2014-05-31 10:56 ` Felipe Contreras
2014-05-31 23:39 ` Felipe Contreras
2014-06-01 4:58 ` Atsushi Nakagawa
2014-06-02 21:29 ` Junio C Hamano
2014-06-02 21:31 ` 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=538E26A1.5020509@bracey.fi \
--to=kevin@bracey.fi \
--cc=atnak@chejz.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.