From: Linus Torvalds Date: Tue, 21 Jun 2005 04:06:47 +0000 (-0700) Subject: Change parent syntax to "xyz^" instead of "xyz.p" X-Git-Tag: v0.99~227 X-Git-Url: https://git.verplant.org/?a=commitdiff_plain;h=218e441daf24b9c3be0f5ec423ace5185389ca61;p=git.git Change parent syntax to "xyz^" instead of "xyz.p" The ".pN" thing might be a common ending of a tag, and in contrast, ^ already is a special character for revisions so use that instead. --- diff --git a/rev-parse.c b/rev-parse.c index 1b08b455..40707ac6 100644 --- a/rev-parse.c +++ b/rev-parse.c @@ -62,7 +62,7 @@ static int get_parent(char *name, unsigned char *result, int idx) /* * This is like "get_sha1()", except it allows "sha1 expressions", - * notably "xyz.p" for "parent of xyz" + * notably "xyz^" for "parent of xyz" */ static int get_extended_sha1(char *name, unsigned char *sha1) { @@ -70,15 +70,15 @@ static int get_extended_sha1(char *name, unsigned char *sha1) int len = strlen(name); parent = 1; - if (len > 3 && name[len-1] >= '1' && name[len-1] <= '9') { + if (len > 2 && name[len-1] >= '1' && name[len-1] <= '9') { parent = name[len-1] - '0'; len--; } - if (len > 2 && !memcmp(name + len - 2, ".p", 2)) { + if (len > 1 && name[len-1] == '^') { int ret; - name[len-2] = 0; + name[len-1] = 0; ret = get_parent(name, sha1, parent); - name[len-2] = '.'; + name[len-1] = '^'; if (!ret) return 0; }