git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jeff King <peff@peff.net>
To: Clemens Buchacher <drizzd@aon.at>
Cc: Miles Bader <miles@gnu.org>,
	Matthieu Moy <Matthieu.Moy@grenoble-inp.fr>,
	git@vger.kernel.org, Peter Rabbitson <ribasushi@cpan.org>
Subject: Re: DWIM "git checkout frotz" to "git checkout -b frotz origin/frotz"
Date: Tue, 8 Jun 2010 03:52:42 -0400	[thread overview]
Message-ID: <20100608075241.GA3166@coredump.intra.peff.net> (raw)
In-Reply-To: <20100608072958.GA24302@localhost>

On Tue, Jun 08, 2010 at 09:29:58AM +0200, Clemens Buchacher wrote:

> Let's assume the user "just wants to check out branch X." Such a
> use case has been mentioned previously in this thread. So they say
> "git checkout X", and voila, they get what they wanted.
> 
> It did what they meant it to do. Everybody is happy. But not for
> long.
> 
> Because the next time they "just want to check out branch X," they
> will remember, it's time for "git checkout X." But what's this?
> This is not what they wanted. It does not have the latest changes
> on branch X! Didn't they do the same thing they did last time?
> 
> No they did not, because last time they _created a branch_.
> Eventually, if they are lucky, they will learn in #git that they
> were supposed to "git merge <remote>/X." And they will think "WTF?
> Why do I have to _merge_? And what's this business about remotes?
> Why is git is so complicated?"

FWIW, I made this same complaint at the GitTogether, and the response I
got is that git does help the user along through the second "checkout".
You get something like:

  $ git checkout foo
  Branch private set up to track remote branch foo from origin.
  Switched to a new branch 'foo'

  ... time passes ...

  $ git checkout foo
  Switched to branch 'foo'
  Your branch is behind 'origin/foo' by 5 commits, and can be fast-forwarded.

Now you can certainly argue that a clueless user won't know what to do
with those messages, but it is not entirely true that git leaves them
without any advice. Perhaps we could lessen the "wtf" moment in your
example above by making that advice better.

-Peff

  parent reply	other threads:[~2010-06-08  7:52 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-06-05 11:09 DWIM "git checkout frotz" to "git checkout -b frotz origin/frotz" Clemens Buchacher
2010-06-05 13:29 ` Sverre Rabbelier
2010-06-05 13:58   ` Clemens Buchacher
2010-06-05 14:03     ` Sverre Rabbelier
2010-06-05 15:02       ` Clemens Buchacher
2010-06-05 18:23         ` Nicolas Pitre
2010-06-06 16:18       ` Jeff King
2010-06-06 16:55         ` Clemens Buchacher
2010-06-06 16:59           ` Jacob Helwig
2010-06-06 17:32             ` Clemens Buchacher
2010-06-06 17:34               ` Sverre Rabbelier
2010-06-06 21:26               ` Jacob Helwig
2010-06-07 18:29                 ` Clemens Buchacher
2010-06-07 20:11                   ` Jan Krüger
2010-06-07 21:12                     ` Clemens Buchacher
2010-06-06 18:34           ` Johan Herland
2010-06-06 16:18 ` Matthieu Moy
2010-06-06 16:46   ` Clemens Buchacher
2010-06-07  6:41     ` Miles Bader
2010-06-07 18:54       ` Clemens Buchacher
2010-06-07 19:17         ` Matthieu Moy
2010-06-07 19:32           ` Clemens Buchacher
2010-06-07 19:52             ` Bruce Stephens
2010-06-08  8:07             ` Michael J Gruber
2010-06-08  8:18               ` demerphq
2010-06-08  8:37                 ` Michael J Gruber
2010-06-08  0:25         ` Miles Bader
2010-06-08  7:29           ` Clemens Buchacher
2010-06-08  7:47             ` demerphq
2010-06-08 13:04               ` Matthieu Moy
2010-06-08  7:52             ` Miles Bader
2010-06-08  7:52             ` Jeff King [this message]
2010-06-08 18:13               ` Clemens Buchacher
2010-06-07  7:53     ` Paolo Bonzini

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=20100608075241.GA3166@coredump.intra.peff.net \
    --to=peff@peff.net \
    --cc=Matthieu.Moy@grenoble-inp.fr \
    --cc=drizzd@aon.at \
    --cc=git@vger.kernel.org \
    --cc=miles@gnu.org \
    --cc=ribasushi@cpan.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).