diff --git a/builtin-for-each-ref.c b/builtin-for-each-ref.c
index 07d9c572125523e2eb8f82e4cab907ee7dc94348..445039e19c75e4c9321f7ee64289ef8201a25c14 100644 (file)
--- a/builtin-for-each-ref.c
+++ b/builtin-for-each-ref.c
@@ -234,6 +234,13 @@ static void grab_tag_values(struct atom_value *val, int deref, struct object *ob
name++;
if (!strcmp(name, "tag"))
v->s = tag->tag;
+ else if (!strcmp(name, "type") && tag->tagged)
+ v->s = typename(tag->tagged->type);
+ else if (!strcmp(name, "object") && tag->tagged) {
+ char *s = xmalloc(41);
+ strcpy(s, sha1_to_hex(tag->tagged->sha1));
+ v->s = s;
+ }
}
}
return sort;
}
-int opt_parse_sort(const struct option *opt, const char *arg, int unset)
+static int opt_parse_sort(const struct option *opt, const char *arg, int unset)
{
struct ref_sort **sort_tail = opt->value;
struct ref_sort *s;
}
static char const * const for_each_ref_usage[] = {
- "git-for-each-ref [options] [<pattern>]",
+ "git for-each-ref [options] [<pattern>]",
NULL
};