Thread (1 message) 1 message, 1 author, 2016-08-11

Re: [PATCH/RFC] Convenient support of remote branches in git-checkout

From: Junio C Hamano <hidden>
Date: 2016-08-11 20:00:30

Josef Weidendorfer [off-list ref] writes:
quoted
Then "git checkout origin/next" would always mean "I want to
switch to the branch I use to hack on the branch 'next' Junio
has".  Do it once and you will get exactly my tip, hack on it,
switch out of it and then do it again and you won't lose your
previous work but just switch to that branch.
Ah, now I understand your thinking.
I admit it has a compelling elegance.

However.
Would it not be confusing for newbies (and not only for them) to
first reference the remote branch with "origin/next", and afterwards, you
get your own development branch by using the exactly same name?
In that example, the user types "git checkout origin/next".  I
do not think there is any confusion.

You come from git background from the era git checkout did _not_
have this magic (in other words, "today"), so you implicitly see
remotes/ prefixed in front of the "origin/next" string there.

But new people do not see remotes/ prefixed there.  To them, the
example command line says "Now I want to be on my 'origin/next'
branch", and there is nothing 'remote' about it.

The magic under discussion happens to create your 'origin/next'
branch automagically from 'remotes/origin/next' when it exists,
but that can be transparent to the user [*1*].

Well, your original magic did not propose it that way, but I
twisted it.

[Footnote]

*1* This is in line with what I wanted to say in my earlier "if
    I were redoing git from scratch" message when I talked about
    making "remotes" less visible.



Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help