From 3a6a23e67d752e3083a52ad04c20c04e40c148e1 Mon Sep 17 00:00:00 2001 From: Linus Torvalds Date: Sat, 30 Apr 2005 11:22:26 -0700 Subject: [PATCH] Make git-fsck-cache error printouts a bit more informative. Show the types of objects involved in broken links, and don't bother warning about unreachable tag files (if somebody cares about tags, they'll use the --tags flag to see them). --- fsck-cache.c | 30 ++++++++++++++++++------------ 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/fsck-cache.c b/fsck-cache.c index 44e5e49948..d8d2e594fc 100644 --- a/fsck-cache.c +++ b/fsck-cache.c @@ -23,27 +23,33 @@ static void check_connectivity(void) struct object *obj = objs[i]; struct object_list *refs; + if (!obj->parsed) { + printf("missing %s %s\n", obj->type, sha1_to_hex(obj->sha1)); + continue; + } + + for (refs = obj->refs; refs; refs = refs->next) { + if (refs->item->parsed) + continue; + printf("broken link from %7s %s\n", + obj->type, sha1_to_hex(obj->sha1)); + printf(" to %7s %s\n", + obj->type, sha1_to_hex(refs->item->sha1)); + } + + /* Don't bother with tag reachability. */ + if (obj->type == tag_type) + continue; + if (show_unreachable && !(obj->flags & REACHABLE)) { printf("unreachable %s %s\n", obj->type, sha1_to_hex(obj->sha1)); continue; } - if (!obj->parsed) { - printf("missing %s %s\n", obj->type, - sha1_to_hex(obj->sha1)); - } if (!obj->used) { printf("dangling %s %s\n", obj->type, sha1_to_hex(obj->sha1)); } - for (refs = obj->refs; refs; refs = refs->next) { - if (!refs->item->parsed) { - printf("broken link from %s\n", - sha1_to_hex(obj->sha1)); - printf(" to %s\n", - sha1_to_hex(refs->item->sha1)); - } - } } }