Re: Feature request: git status --branch-only
- From
- phillip.wood123@gmail.com <phillip.wood123@gmail.com>
- Date
- Nov 16, 2023, 16:09 UTC
- Message-ID
- <7b4c76c3-4a1c-4d78-85bf-7a160a286dc5@gmail.com>
- In-Reply-To
- <20231114201808.GE2092538@coredump.intra.peff.net>
Hi Peff
On 14/11/2023 20:18, Jeff King wrote:
Show 26 quoted lines
> On Tue, Nov 14, 2023 at 03:02:04PM +0000, Phillip Wood wrote: > >> Hi Ondra >> >> On 14/11/2023 12:40, Ondra Medek wrote: >>> Hi Phillip, >>> >>> it does not work for a fresh clone of an empty repository >>> >>> git for-each-ref --format="%(upstream:short)" refs/heads/master >>> >>> outputs nothing, while >> >> Oh dear, that's a shame. I wonder if it is a bug because the documentation >> says that >> >> --format="%(upstream:track)" >> >> should print "[gone]" whenever an unknown upstream ref is encountered but >> trying that on a clone of an empty repository gives no output. > > I think it would print "gone" if the upstream branch went missing. But > in this case the actual local branch is missing. And for-each-ref will > not show an entry at all for a ref that does not exist. The > "refs/heads/master" on your command line is not a ref, but a pattern, > and that pattern does not match anything. So it's working as intended.
Oh of course, I'd somehow forgotten that "refs/heads/master" did not exist so it makes sense that for-each-ref does not print anything.
Show 10 quoted lines
> I think a more direct tool would be:
>
> git rev-parse --symbolic-full-name master@{upstream}
>
> That convinces branch_get_upstream() to return the value we want, but
> sadly it seems to get lost somewhere in the resolution process, and we
> spit out an error. Arguably that is a bug (with --symbolic or
> --symbolic-full-name, I think it would be OK to resolve names even if
> they don't point to something, but it's possible that would have other
> unexpected side effects).Yeah, maybe we should look at fixing that - I didn't suggest it because I knew it did not work on an unborn branch but as you say there is no obvious reason why it shouldn't
Best Wishes
Phillip
> -Peff