mirror of
https://github.com/git/git.git
synced 2024-11-18 19:13:58 +01:00
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).
This commit is contained in:
parent
9b23b4bc1c
commit
3a6a23e67d
30
fsck-cache.c
30
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));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user