On Wed, Apr 27, 2011 at 1:29 PM, Stephen Kelly <steveire@xxxxxxxxx> wrote: > On Wed, Apr 27, 2011 at 11:48 AM, Felipe Contreras > <felipe.contreras@xxxxxxxxx> wrote: >> No problems here: > > I had another go. > > mkdir remote > cd remote/ > git init --bare > cd ../ > git clone remote/ alice > cd alice/ > echo test >> file > git add file > git commit -am w > git push origin master > echo test >> file > git commit -am w > git branch HEAD I'll stop you here. You reproduce the issue a lot simpler: git init foo && cd foo && echo "foo" > bar && git add bar && git commit -m. && git branch HEAD && gitk No need to involve remote branches. While remote branches makes the issue worse, because you can get in a situation where gitk doesn't when someone else made a nasty branch, and you fetched it. The real problem is that "git rev-parse HEAD" outputs "warning: refname 'HEAD' is ambiguous." to stderr (even if stderr is a non-tty), and gitk does not like that. This can be fixed by either doing "git -c core.warnambiguousrefs=0 rev-parse HEAD", which strikes me as ugly, or by making sure that we don't issue this warning when not attached to a tty: diff --git a/sha1_name.c b/sha1_name.c index faea58d..c7e855e 100644 --- a/sha1_name.c +++ b/sha1_name.c @@ -391,7 +391,7 @@ static int get_sha1_basic(const char *str, int len, unsigned char *sha1) if (!refs_found) return -1; - if (warn_ambiguous_refs && refs_found > 1) + if (warn_ambiguous_refs && refs_found > 1 && isatty(2)) warning(warn_msg, len, str); if (reflog_len) { -- 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