From: Angelo Dureghello Date: Fri, 08 Mar 2024 20:27:22 GMT Subject: Re: [BUG] cannot git clone with includeif onbranch Message-ID: In-Reply-To: Hi Brian, On 08/03/24 9:10 PM, brian m. carlson wrote: > On 2024-03-08 at 19:25:52, Angelo Dureghello wrote: >> Hi, >> >> below the bug report, not totally sure this is a bug btw. >> >> --- >> >> Thank you for filling out a Git bug report! >> Please answer the following questions to help us understand your issue. >> >> What did you do before the bug happened? (Steps to reproduce your issue) >> >> Perform a git clone https with includeif onbranch in the .gitconfig >> >> Create a .gitconfig >> with >> [includeIf "onbranch:wip/pippo/**"] >> path = ~/.gitconfig.pippo.inc >> >> git clone https://github.com/analogdevicesinc/no-OS.git >> >> Cloning into 'no-OS'... >> BUG: refs.c:2083: reference backend is unknown >> error: git-remote-https died of signal 6 > > Thanks for the report. > > I can definitely confirm this with a local Git 2.44.0 built out of my > working tree. It seems to trigger as long as there's a `path` entry > whether the path exists or not. It _doesn't_ seem to trigger with a > `gitdir` check, but does trigger for `onbranch`. v2.43.0 is not > affected. > > I do definitely think this is a bug. First of all, we should not > trigger BUG conditions, even if the user has done something naughty, so > we should fix it for that reason. Second of all, this seems like a > completely reasonable thing to want to do, and considering it triggers > for existing files, and that it worked just fine in v2.43.0, I don't see > a reason we shouldn't have this work. > > A bisection[0] leads us to 0fcc285c5e ("refs: refactor logic to look up > storage backends", 2023-12-29). I've CCed the author of that commit, > who hopefully can provide some more helpful context. > > I have some guesses about what's going on here, but I haven't poked > further into the situation, so I'll refrain from speculating for now. > > [0] git bisect run sh -c 'make -j12 && cd $TMPDIR && rm -fr no-OS && PATH="$HOME/checkouts/git/bin-wrappers:$PATH" git clone https://github.com/analogdevicesinc/no-OS.git; RET=$?; [ "$RET" -eq 128 ] && RET=1; exit $RET' Thanks a lot. Actually i can work with git clone git@github.com:.. that works, issue is only on http. Regards, and if i can help, welcome. angelo