Re: [PATCH v4] Introduce %<branch> as shortcut to the tracked branch
From: Johannes Schindelin <hidden>
Date: 2016-06-15 22:46:26
Hi, On Fri, 20 Mar 2009, Junio C Hamano wrote:
Johannes Schindelin [off-list ref] writes:quoted
Often, it is quite interesting to inspect the branch tracked by a given branch. This patch introduces a nice notation to get at the tracked branch: '%<branch>' can be used to access that tracked branch. A special shortcut '%' refers to the branch tracked by the current branch. Suggested by Pasky. Even if a branch name can legally start with a '%' sign, we can use the special character '%' here, as you can always specify the full ref: refs/heads/%my-branch (pointed out by doener on IRC).That is not a good argument, as %<name> is (just like name@{-n} is) a substitute way to spell the "name" of a branch, not just a random SHA-1, and to some commands it makes a difference between <branchname> and refs/heads/<branchname>. The latter is not giving the name of the branch, but merely a commit object name. An most obvious one is that "git checkout branchname" and "git checkout refs/heads/branchname" behave differently. You cannot checkout a branch called %master after this patch goes in. Just be honest and say "You may have a branch whose name begins with a '%' and you cannot refer to it anymore in certain contexts. Too bad. Don't do it next time you create a new branch". I _can_ buy that argument.
Be that as it may, at this point I kick the ball back to the interested parties. I did my duty. Ciao, Dscho