From 709768a8379b12e62cc8d03b2795d46dc482cb3b Mon Sep 17 00:00:00 2001 From: Chris Hescock Date: Fri, 9 Dec 2016 15:59:52 -0500 Subject: Don't fetch objects we don't need in local transport. Hide all local refs in the revwalk. Packbuilder should not add hidden trees or blobs. --- src/pack-objects.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/pack-objects.c') diff --git a/src/pack-objects.c b/src/pack-objects.c index 9f62322f7..8ca6403d1 100644 --- a/src/pack-objects.c +++ b/src/pack-objects.c @@ -1641,7 +1641,7 @@ int insert_tree(git_packbuilder *pb, git_tree *tree) if ((error = retrieve_object(&obj, pb, git_tree_id(tree))) < 0) return error; - if (obj->seen) + if (obj->seen || obj->uninteresting) return 0; obj->seen = 1; @@ -1665,6 +1665,10 @@ int insert_tree(git_packbuilder *pb, git_tree *tree) break; case GIT_OBJ_BLOB: + if ((error = retrieve_object(&obj, pb, git_tree_id(tree))) < 0) + return error; + if (obj->uninteresting) + continue; name = git_tree_entry_name(entry); if ((error = git_packbuilder_insert(pb, entry_id, name)) < 0) return error; -- cgit v1.2.1