Re: [PATCH] checkout --track: make up a sensible branch name if '-b' was omitted
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Aug 9, 2008, 19:46 UTC
- Message-ID
- <7vvdya55ur.fsf@gitster.siamese.dyndns.org>
- In-Reply-To
- <7vtzdu6nb7.fsf@gitster.siamese.dyndns.org>
Junio C Hamano <gitster@pobox.com> writes:
Show 14 quoted lines
> Johannes Schindelin <Johannes.Schindelin@gmx.de> writes: > >> What does the user most likely want with this command? >> >> $ git checkout --track origin/next >> >> Exactly. A branch called 'next', that tracks origin's branch 'next'. > > I like this. > > An explicit --track request from the command line (as opposed to happening > to have "branch.autosetupmerge" configuration) is a very good cue that > what the user wants to do is not to take a peek on a detached HEAD but a > more permanent playpen created.
A couple more thoughts.
(1) You may not necessarily are used to --track, but may still want this
done. It might not be a bad idea to associate this "local dwimming"
to creation of a new branch. In other words, all of these: $ git checkout -b origin/next
$ git checkout -b --track origin/next
$ git checkout --track origin/nextmay merit the same dwimming.
(2) If you work with somebody else, you might not want to have the name
mapping to be "s|^[^/]*/||" (i.e. drop "origin/"): $ git remote add -f jeff $url_to_his_repository
$ git checkout -b [--track] jeff-next jeff/next
$ git checkout -b [--track] origin-next origin/next