From: Junio C Hamano Date: Fri, 20 Sep 2013 19:25:32 +0000 (-0700) Subject: Merge branch 'nd/fetch-into-shallow' X-Git-Tag: v1.8.5-rc0~104 X-Git-Url: http://git.bitbasher.net/?a=commitdiff_plain;h=238504b014230d0bc244fb0de84990863fcddd59;p=git.git Merge branch 'nd/fetch-into-shallow' When there is no sufficient overlap between old and new history during a fetch into a shallow repository, we unnecessarily sent objects the sending side knows the receiving end has. * nd/fetch-into-shallow: Add testcase for needless objects during a shallow fetch list-objects: mark more commits as edges in mark_edges_uninteresting list-objects: reduce one argument in mark_edges_uninteresting upload-pack: delegate rev walking in shallow fetch to pack-objects shallow: add setup_temporary_shallow() shallow: only add shallow graft points to new shallow file move setup_alternate_shallow and write_shallow_commits to shallow.c --- 238504b014230d0bc244fb0de84990863fcddd59 diff --cc fetch-pack.c index 094267fd80,28195ed78b..13b5b43bfa --- a/fetch-pack.c +++ b/fetch-pack.c @@@ -897,9 -845,7 +846,9 @@@ static struct ref *do_fetch_pack(struc if (args->stateless_rpc) packet_flush(fd[1]); if (args->depth > 0) - setup_alternate_shallow(); + setup_alternate_shallow(&shallow_lock, &alternate_shallow_file); + else + alternate_shallow_file = NULL; if (get_pack(args, fd, pack_lockfile)) die("git fetch-pack: fetch failed.");