Re: get upstream branch
- From
Jeff King <peff@peff.net>
- Date
- Dec 9, 2008, 05:56 UTC
- Message-ID
- <20081209055629.GB2972@coredump.intra.peff.net>
- In-Reply-To
- <7vljup6hdf.fsf@gitster.siamese.dyndns.org>
On Mon, Dec 08, 2008 at 09:35:08PM -0800, Junio C Hamano wrote:
> I do not think there is any plumbing facility to get that information, as > such "upstream/parent" concept did not exist back then when building the > whole Porcelain by scripting was the norm.
In one of my scripts I do something like this (actually this is not straight from my script, as the operation there is "find all pairs of local/remote branches" and this is "find the current upstream"):
ref=`git symbolic-ref HEAD`
head=${ref#refs/heads/}
remote=`git config branch.$head.remote`
branch=`git config branch.$head.merge`
echo refs/remote/$remote/${branch#refs/heads/}And obviously this is missing error checking for the detached HEAD (symbolic-ref should fail) and no tracking branch ($remote and/or $branch will be empty) cases.
-Peff