refspec: make @ a synonym of HEAD
Since commit 9ba89f484e
git learned how to push to a remote branch using
the source @, for example:
git push origin @:master
However, if the right-hand side is missing, the push fails:
git push origin @
It is obvious what is the desired behavior, and allowing the push makes
things more consistent.
Additionally, @:master now has the same semantics as HEAD:master.
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
e7f80eafd1
commit
374fbaef3d
@ -71,7 +71,10 @@ static int parse_refspec(struct refspec_item *item, const char *refspec, int fet
|
||||
}
|
||||
|
||||
item->pattern = is_glob;
|
||||
item->src = xstrndup(lhs, llen);
|
||||
if (llen == 1 && *lhs == '@')
|
||||
item->src = xstrdup("HEAD");
|
||||
else
|
||||
item->src = xstrndup(lhs, llen);
|
||||
flags = REFNAME_ALLOW_ONELEVEL | (is_glob ? REFNAME_REFSPEC_PATTERN : 0);
|
||||
|
||||
if (item->negative) {
|
||||
|
Reference in New Issue
Block a user