Code

for-each-ref: implement missing tag values
[git.git] / builtin-for-each-ref.c
index 07d9c572125523e2eb8f82e4cab907ee7dc94348..fef93d7488d15fac28e96f887f26556755cc6ca8 100644 (file)
@@ -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;
+               }
        }
 }