Hi Stefan thanks for much for the response! So I compiled release
version 2.6.4 as well as the current master branch on the git git
repository (2.7.0.rc0.20.g4b9ab0e) and the problem persists on both.
To answer your questions, there are no weird characters. The name of the
bad_branch is "frus". There is another branch called
"frus_body_cleaning" that is totally fine.
As to whether the error continues after commits, the answer is no which
is good. I.e. if I run `git checkout -b frus origin/frus` that works
fine. I then decided to checkout a new branch (so as to not mess with
the original branch and possibly turning this into a Heisenbug) and add
a test commit which I pushed upstream. I then recloned the repository
and was able to checkout this new branch just fine, but I still couldn't
check out the original frus branch using the simplified command.
So of course on the practical side, I have a fix which is to just use
`git checkout -b frus origin/frus` (apparently only this one time) and
then be on my merry way (in fact I had only just broken myself of the
habit typing it this older way after many versions of the newer simpler
syntax), but it seems like it could be good to sort out what's going on
here...
Thanks again for the response!
Cheers,
Thomas
On 12/14/2015 12:51 PM, Stefan Beller wrote:
On Mon, Dec 14, 2015 at 9:40 AM, Thomas Nyberg <tomnyberg@xxxxxxxxx> wrote:
Hello,
I have a repository (which I unfortunately cannot provide access to) which
is having some odd things happening with one (and only one) of its branches.
This workflow repeats the issue (here `bad_branch` is one of the remotes
branches; i.e. `origin/bad_branch`):
(1) clone the repository
(2) git checkout `bad_branch`
Basically nothing happens. Nothing is printed and I stay on the master
branch. I also checked $? and there is no error code that is set. If I
choose any of other branches, it correctly creates a local branch, sets it
to track the remote and then switches to the local branch.
Does that branch have a funny name? (i.e. is it ASCII only? Or is it
also utf8 characters?
Does it have some special characters in it like points, colons,
question marks etc)
Does it happen only with a single sha1 or can you apply commits on top
of that branch
and the error condition persists?
It seems like there could be some sort of weird bug in the checkout or
possibly somehow some corruption in the actual object tree. From my vantage
point, however, the data appears totally fine. For example, in
`.git/packed-refs` everything appears normal and if I explicitly checkout
the commit IDs directly (i.e. just copy the commit corresponding to
refs/remotes/origin/bad_branch and checkout $commit) it checks out fine. If
I do this with the bad_branch I get a detached HEAD as expected and git log
lists the commits that it should.
This seems a bit odd to me. There's certainly some sort of error somewhere,
but it's passing silently. I'm not really sure how to debug this and it's
too bad I can't actually link the actual repository. I presume if I have the
time I could try compiling git from source and seeing if it still shows up.
I tested it on the following two versions of git get the same error:
* 1.9.1 (installed as a package from Linux Mint 17.2 Rafaela)
* 2.1.4 (installed as a package from Debian Jessie 8.2)
The refs handling code is in flux at the moment. (starting mid of last
year actually)
I cc'd people who did work recently on the file refs.c
So I think trying with a new version of Git would be a valuable datapoint!
Also I should note that the original repository is hosted on Github.
Thanks for any help. Hopefully the fact that I can't provide enough
information for others to reproduce the issue isn't too large a bother...
Cheers,
Thomas Nyberg
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html