Re: tracking branch for a rebase
From: Junio C Hamano <hidden>
Date: 2016-06-15 22:47:22
Jeff King [off-list ref] writes:
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?