[prev in list] [next in list] [prev in thread] [next in thread] 

List:       git
Subject:    Re: [PATCH] checkout --track: make up a sensible branch name if '-b' was omitted
From:       Tarmigan <tarmigan+git () gmail ! com>
Date:       2008-08-09 21:56:19
Message-ID: 905315640808091456q63c20dcfp9ab3b93387688693 () mail ! gmail ! com
[Download RAW message or body]

On Sat, Aug 9, 2008 at 2:08 PM, Johannes Schindelin
<Johannes.Schindelin@gmx.de> wrote:
> Hi,
>
> On Sat, 9 Aug 2008, Junio C Hamano wrote:
>
>> Junio C Hamano <gitster@pobox.com> writes:
>>
>> > 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.
>
> At first, I liked the thoughts, but...
>
>> (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
>
> This cannot be dwimmed, as it literally means "start a new branch called
> 'origin/next' from HEAD".

Could we check whether there is already a remote called "origin" with
a branch called "next"?  If refs/remotes/origin/next exists it could
be confusing to create refs/heads/origin/next anyway, so it this dwim
might eliminate a problem as well as be nicer.  In fact, git soon
complains (rightly) about ambigiuos references in this case.

> So it would change the current behavior would, breaking people's habits (I
> do "git checkout -b bla" a lot when I realize that I want to have the
> current changes on a new branch).

If we did this dwim only for remotes, your desired behavior could
still work, right?.  The default is to --track for branches created
from remotes anyway, right?

Thanks,
Tarmigan
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic