From: drafnel@gmail.com Date: Mon, 10 Nov 2008 05:59:55 GMT Subject: recognize loose local objects during repack Message-ID: <2390436.1226296705080.JavaMail.teamon@b307.teamon.com> In-Reply-To: <7v8wrwidi3.fsf@gitster.siamese.dyndns.org> This was developed on top of the previous repack/pack-objects series. Junio wrote: > Presumably you meant "exclude objects accessible through alternates, > either in packs or in loose form"? If so then I think it is a good thing > to have. This patch set looks like what is necessary to exclude loose objects accessible through alternates from packing. > I think the useful kinds are only these five: > > - scoop loose objects that exist in local repository into a new pack, > without touching existing packs at all; exclude anything available in > any existing pack or in alternate repository (either loose or packed); repack -l > - pack everything that is needed by the local ref, except the ones that > are borrowed from alternate repositories (either loose or packed), into > a single new pack. There are two variants of this: eject what is > currently packed but unnecessary into loose format when existing local > packs are replaced with the new pack, or lose them (i.e. -A). repack -a -l repack -A -l > - fatten local repository by packing everything that is needed by the > local ref into a single new pack, including things that are currently > borrowed from alternates. There are two variants of this: eject what > is currently packed but unnecessary into loose format when existing > local packs are replaced with the new pack, or lose them (i.e. -A). repack -a repack -A -brandon