Subject: Re: git branch -a now reports 'remotes/foo' rather than 'foo'?

From: Daniel Pittman <[email-masked]>
Date: Mon, 11 May 2009 17:01:33 +1000

Jay Soffian <[email-masked]> writes:
> On Sun, May 10, 2009 at 10:16 PM, Daniel Pittman <[email-masked]> wrote:
>> The front-end I am using looks for a 'trunk' branch by name in the
>> output of 'git branch -a', which historically worked.  Now, though, it
>> shows that fully qualified.

[...]

>> I wanted to confirm that this was a deliberate change before I went to
>> the trouble or rewriting the front-end code however.
>
> Yes, the change was deliberate. Commit 209d336 (builtin-branch:
> improve output when displaying remote branches, 2009-02-13) has more
> details:
>
>     When displaying local and remote branches, prefix the remote
>     branch names with "remotes/" to make the remote branches clear
>     from the local branches.

Isn't the use of colour sufficient to do this?  Ah, well.  That horse,
I think, has bolted, and my own end-users thoughts about the incoherence
are, I suspect, of little relevance now.

>     If displaying only the remote branches, the prefix is not shown
>     since it would be redundant.
>
> When you fix your front-end, I suggest you stop parsing git branch's
> output. It is a so-called porcelain command, as opposed to a plumbing
> command, and so its output is subject to change. You probably want to
> use the for-each-ref command instead.

It isn't my front-end, but I shall take a look and see if I can send
upstream a suitable patch.  Thanks for the advice.

Regards,
        Daniel