Avoid scary errors about tagged trees/blobs during git-fetch
authorShawn O. Pearce <spearce@spearce.org>
Fri, 19 Oct 2007 04:54:59 +0000 (00:54 -0400)
committerShawn O. Pearce <spearce@spearce.org>
Fri, 19 Oct 2007 07:47:07 +0000 (03:47 -0400)
This is the same bug as 42a32174b600f139b489341b1281fb1bfa14c252.
The warning "Object $X is a tree, not a commit" is bogus and is
not relevant here.  If its not a commit we just need to make sure
we don't mark it for merge as we fill out FETCH_HEAD.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
builtin-fetch.c

index 3442f3d09e8078bd9cd1213b81ee64fb69c9c3c1..b9d2b0c27e3c09dd2746db94c25c00eaa492ba7c 100644 (file)
@@ -202,8 +202,8 @@ static int update_local_ref(struct ref *ref,
                return s_update_ref("updating tag", ref, 0);
        }
 
-       current = lookup_commit_reference(ref->old_sha1);
-       updated = lookup_commit_reference(ref->new_sha1);
+       current = lookup_commit_reference_gently(ref->old_sha1, 1);
+       updated = lookup_commit_reference_gently(ref->new_sha1, 1);
        if (!current || !updated) {
                char *msg;
                if (!strncmp(ref->name, "refs/tags/", 10))
@@ -261,7 +261,7 @@ static void store_updated_refs(const char *url, struct ref *ref_map)
                        ref->force = rm->peer_ref->force;
                }
 
-               commit = lookup_commit_reference(rm->old_sha1);
+               commit = lookup_commit_reference_gently(rm->old_sha1, 1);
                if (!commit)
                        rm->merge = 0;