Subject: Re: "git symbolic-ref" doesn't do a very good job

From: Junio C Hamano <[email-masked]>
Date: Sat, 30 Jul 2022 13:38:37 -0700

Linus Torvalds <[email-masked]> writes:

> t3200-branch.sh does
>
>       git symbolic-ref refs/heads/dangling-symref nowhere
>
> which really depends on that whole "git symbolic-ref does no sanity
> checking at all".

Yeah, once in the past, I thought

    git symbolic-ref refs/heads/main master

might be a way to adjust to the new world order without having me to
change my workflow.  I can always update master, and main follows it
without me being aware of it even being there. 

But it did not work.  Even worse, after doing so, running

    git update-ref refs/heads/main master

created ".git/master", which was a disaster.  Of course

    git symbolic-ref refs/heads/main refs/heads/master

would have worked.

I am not sure what workflow the "nowhere" thing is supposed to help.
Of course, with s/nowhere/HEAD/, it is a perfectly sane repository
immediately after "git init -b nowhere", so whatever tightening we
do, we should make sure that

    git symbolic-ref refs/heads/main HEAD

keeps working.