Improve git-prune -n output
authorAndy Parkins <andyparkins@gmail.com>
Thu, 2 Nov 2006 11:12:26 +0000 (12:12 +0100)
committerJunio C Hamano <junkio@cox.net>
Wed, 22 Nov 2006 03:02:08 +0000 (19:02 -0800)
prune_object() in show_only mode would previously just show the path to the
object that would be deleted.  The path the object is stored in shouldn't be
shown to users, they only know about sha1 identifiers so show that instead.

Further, the sha1 alone isn't that useful for examining what is going to be
deleted.  This patch also adds the object type to the output, which makes it
easy to pick out, say, the commits and use git-show to display them.

Signed-off-by: Andy Parkins <andyparkins@gmail.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
builtin-prune.c

index d853902c51e78800b76cf4714dffaa79600d3e53..286a94c3fc46e2af1f0a31fbaa4aaacf7b876783 100644 (file)
@@ -16,8 +16,14 @@ static struct rev_info revs;
 
 static int prune_object(char *path, const char *filename, const unsigned char *sha1)
 {
+       char buf[20];
+       const char *type;
+
        if (show_only) {
-               printf("would prune %s/%s\n", path, filename);
+               type = buf;
+               if (sha1_object_info(sha1, type, NULL))
+                       type = "unknown";
+               printf("%s %s\n", sha1_to_hex(sha1), type );
                return 0;
        }
        unlink(mkpath("%s/%s", path, filename));