summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorShawn O. Pearce <spearce@spearce.org>2007-01-25 18:39:54 +0100
committerJunio C Hamano <junkio@cox.net>2007-01-28 11:08:51 +0100
commit237fb6ca7cbe45f88523ad367d0d703a039dff2d (patch)
tree4dfdc4b03eb64ce8003868dc584514a412799bb6
parentgit-blame --porcelain: quote filename in c-style when needed. (diff)
downloadgit-237fb6ca7cbe45f88523ad367d0d703a039dff2d.tar.xz
git-237fb6ca7cbe45f88523ad367d0d703a039dff2d.zip
Teach git-describe to display distances from tags.
If you get two different describes at different times from a non-rewinding branch and they both come up with the same tag name, you can tell which is the 'newer' one by distance. This is rather common in practice, so its incredibly useful. [jc: still needs documentation and fixups when traversal gives up early.] Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
-rw-r--r--builtin-describe.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/builtin-describe.c b/builtin-describe.c
index f3ac2d5f89..aedbc78dac 100644
--- a/builtin-describe.c
+++ b/builtin-describe.c
@@ -191,8 +191,9 @@ static void describe(const char *arg, int last_one)
if (abbrev == 0)
printf("%s\n", all_matches[0].name->path );
else
- printf("%s-g%s\n", all_matches[0].name->path,
- find_unique_abbrev(cmit->object.sha1, abbrev));
+ printf("%s-%d-g%s\n", all_matches[0].name->path,
+ all_matches[0].depth,
+ find_unique_abbrev(cmit->object.sha1, abbrev));
if (!last_one)
clear_commit_marks(cmit, -1);