threads / discuss / 19832

git-branch: Actually using the current branch as default start-point

Subject: git-branch: Actually using the current branch as default start-point

## tl;dr

2 messages between Jun 16, 2009 and Jun 16, 2009.

replies: 1people: 2as markdown or json

Martin Nordholts· Jun 16, 2009, 19:13 UTC · lore
Hi

The git-branch documentation states that the start-point defaults to the current branch if omitted. I interpret that to mean that

  git checkout origin/somebranch
  git branch newbranch
is equivalent to
  git branch newbranch origin/somebranch

but that is currently not the case. If you checkout a remote branch then you are not considered to _be_ on the remote branch, so the start-point will behave as if an arbitrary commit was specified, i.e. tracking will not be setup correctly.

This is an easy patch and I have something working, I just need to finalize it. Does this sound like a sane patch to you?

Best regards, Martin Nordholts

Johannes Schindelin· Jun 16, 2009, 21:28 UTC · re: Martin Nordholts · lore

Re: git-branch: Actually using the current branch as default start-point

Hi,
On Tue, 16 Jun 2009, Martin Nordholts wrote:
> The git-branch documentation states that the start-point defaults to the 
> current branch if omitted. I interpret that to mean that
> 
>  git checkout origin/somebranch
This detaches the HEAD.
>  git branch newbranch
This gives the detached HEAD a name.
> is equivalent to
> 
>  git branch newbranch origin/somebranch

In this case, we know exactly from which remote branch the new branch was created.

The difference?

In the former case, origin can be long gone by the time the new branch is created. And you have to make sure that once we switch away (by whatever means) from the detached HEAD, the tracking information is deleted.

All in all, your wish sounds rather fragile and thus not desirable to me.

Ciao, Dscho

P.S.: Disclaimer skipped as we talked on IRC about it, and I am actually surprised you still think it would be a sensible idea.

← back to recent threads