Re: tracking branch for a rebase
From: Michael J Gruber <hidden>
Date: 2016-06-15 22:47:22
Junio C Hamano venit, vidit, dixit 07.09.2009 07:05:
Jeff King [off-list ref] writes:quoted
quoted
Hm, I'd prefer a shorthand for "upstream for this branch", instead of magic defaults.The more I think about, the more I think that is the right solution. Because magic defaults for "rebase -i" don't help when you want to do "gitk $UPSTREAM..". The previous discussion on the topic seems to be here: http://article.gmane.org/gmane.comp.version-control.git/113666 And apparently you and I both participated in the discussion, which I totally forgot about. Looks like the discussion ended with people liking the idea but not knowing what the specifier should look like. Maybe tightening the ref syntax a bit to allow more extensible "special" refs is a good v1.7.0 topic? I dunno.At-mark currently is reserved for anything that uses reflog, but we can say that it is to specify operations on refs (as opposed to caret and tilde are to specify operations on object names). It specifies what ref to work on with the operand on its left side (and an empty string stands for "HEAD"), and what operation is done to it by what is in {} on the right side of it. This view is quite consistent with the following existing uses of the notation: ref@{number} -- nth reflog entry ref@{time} -- ref back then @{-number} -- nth branch switching So perhaps ref@{upstream}, or any string that is not a number and cannot be time, can trigger the magic operation on the ref with ref@{magic} syntax?
Even @{} is not taken so far... Alternatively, most people associate '^'
with 'up', just the way we use it for "upwards parentship" ref^ (and
somewhat the way we use it for upwards/backwards tag reference
relationship resolving ref^{type}), so
@^
or
@{^}
would be an option. Read "at upstream" :)
Michael