Re: kernel.org git tree corrupt?
From: Linus Torvalds <torvalds@linux-foundation.org>
Date: 2008-03-03 16:22:22
Also in:
lkml
On Sun, 2 Mar 2008, Steve French wrote:
quoted
- look at your "origin" branch, and make sure it's a *remote* branch, not the old-style local one. Ie it should *not* show up when you do a plain git branchnow only shows "* master"quoted
but it *should* show up (as both "origin/HEAD" and "origin/master") when you do git branch -aNow "git branch -a" shows * master origin/master It is missing "origin/HEAD"
Ahh, yeah, my bad. The origin/HEAD thing will be created if you use either clone or "git remote add -m master" to create the remote. But when I asked you to do it by just editing the config file, you now have to create that HEAD pointer manually too. You can do git symbolic-ref refs/remotes/origin/HEAD refs/remotes/origin/master to create the thing (it just creates a symbolic ref from the origin/HEAD remote ref to the origin/master one, so now git will know that when you talk about 'origin', it is supposed to just use the master branch of that remote).
quoted
- now do "git log origin" an it should show something recentgit log origin and git log origin/master both return "ambiguous argument 'origin': unknown revision"
Well, origin/master should have worked, but the fact that plain "origin" didn't work is due to exactly the lack of HEAD file for that remote branch (for your kernel tree, there's only one remote branch, so it may be "obvious" that origin must be talking about the master branch, but if there are multiple branches at the origin it's not obvious *which* branch should be considered the default one, which is why we use HEAD)
I must be misunderstanding the syntax/manpage of git-log but "git diff -m -r origin/master" now works fine and displays exactly what I expect so things have improved.
Well, if "origin/master" works in that situation, then "origin/master" should have worked in "git log" too, so maybe you mistyped? Anyway, with the HEAD link added for the remote 'origin', you should be able to use plain 'origin' like you're used to. Linus