From: Levin Du Date: Mon, 07 Sep 2015 01:05:41 GMT Subject: Re: Questions about git-push for huge repositories Message-ID: In-Reply-To: > Instead, the object transfer is optimized by comparing what commits > each side has and sending trees and blobs that are reachable from > the commits that the receiving side does not have. The sender A sends all the commits that the receiver B does not have. The commits contains trees and blobs. In my situation, branch in A has only one commit. It seems that B has received lots of duplicate blobs, concluded from the GC result. What I do not understand is, how duplicate blobs happen in a git repository? Git repository is famous for its content addressing storage system. I guess that A sends its packed file to B directly, no matter what are already in B.