From 9ba89f484e023827eca6ad44baf69af37dac4db3 Mon Sep 17 00:00:00 2001 From: Felipe Contreras Date: Mon, 2 Sep 2013 01:34:30 -0500 Subject: Add new @ shortcut for HEAD Typing 'HEAD' is tedious, especially when we can use '@' instead. The reason for choosing '@' is that it follows naturally from the ref@op syntax (e.g. HEAD@{u}), except we have no ref, and no operation, and when we don't have those, it makes sens to assume 'HEAD'. So now we can use 'git show @~1', and all that goody goodness. Until now '@' was a valid name, but it conflicts with this idea, so let's make it invalid. Probably very few people, if any, used this name. Signed-off-by: Felipe Contreras Signed-off-by: Junio C Hamano --- refs.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'refs.c') diff --git a/refs.c b/refs.c index 8fd5faf8d..bfe10e2d1 100644 --- a/refs.c +++ b/refs.c @@ -72,6 +72,10 @@ int check_refname_format(const char *refname, int flags) { int component_len, component_count = 0; + if (!strcmp(refname, "@")) + /* Refname is a single character '@'. */ + return -1; + while (1) { /* We are at the start of a path component. */ component_len = check_refname_component(refname, flags); -- cgit v1.2.1