Jeff King <peff@xxxxxxxx> writes: > Since get_headref is useful in contexts where "$remote" is not always > prepended (see patch 3/3), I think the best solution is: ... > + if ($branch eq $opt_o && !$index{branch} && > + !get_headref("$remote/$branch")) { > + my $parent = get_headref("$remote/$last_branch"); > + if (my $sha1 = get_headref("$remote/$mparent")) { So the definition of get_headref() is to always take everything under but not including "refs/"? IOW, the tip of the master branch is asked with get_headref("heads/master")? I think show-ref can easily be confused by its tail matching behaviour, and is a bad command to use in a context like this. To be safe, I think get_headref() should be: sub get_headref { my ($it) = (@_); my $r = `git-rev-parse --verify "refs/$it"`; return undef unless $? == 0; chomp $r; return $r; } - 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