From mboxrd@z Thu Jan 1 00:00:00 1970
From: Thomas
Subject: Re: Large repo and pack.packsizelimit
Date: Thu, 10 May 2012 11:42:09 +0000 (UTC)
Message-ID:
References: <37267143.413194.1336046278583.JavaMail.ngmail@webmail07.arcor-online.net> <20120508203137.GA15707@sigill.intra.peff.net> <20120508212012.GA20044@sigill.intra.peff.net> <7vlil1tg7w.fsf@alter.siamese.dyndns.org>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
To: git@vger.kernel.org
X-From: git-owner@vger.kernel.org Thu May 10 13:42:27 2012
Return-path:
Envelope-to: gcvg-git-2@plane.gmane.org
Received: from vger.kernel.org ([209.132.180.67])
by plane.gmane.org with esmtp (Exim 4.69)
(envelope-from )
id 1SSRlL-00031q-07
for gcvg-git-2@plane.gmane.org; Thu, 10 May 2012 13:42:27 +0200
Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand
id S1759294Ab2EJLmV (ORCPT );
Thu, 10 May 2012 07:42:21 -0400
Received: from plane.gmane.org ([80.91.229.3]:36905 "EHLO plane.gmane.org"
rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP
id S1751938Ab2EJLmU (ORCPT );
Thu, 10 May 2012 07:42:20 -0400
Received: from list by plane.gmane.org with local (Exim 4.69)
(envelope-from )
id 1SSRlC-0002ya-7q
for git@vger.kernel.org; Thu, 10 May 2012 13:42:18 +0200
Received: from proxy36.sbs.de ([194.138.39.56])
by main.gmane.org with esmtp (Gmexim 0.1 (Debian))
id 1AlnuQ-0007hv-00
for ; Thu, 10 May 2012 13:42:18 +0200
Received: from th.acker66 by proxy36.sbs.de with local (Gmexim 0.1 (Debian))
id 1AlnuQ-0007hv-00
for ; Thu, 10 May 2012 13:42:18 +0200
X-Injected-Via-Gmane: http://gmane.org/
X-Complaints-To: usenet@dough.gmane.org
X-Gmane-NNTP-Posting-Host: sea.gmane.org
User-Agent: Loom/3.14 (http://gmane.org/)
X-Loom-IP: 194.138.39.56 (Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.168 Safari/535.19)
Sender: git-owner@vger.kernel.org
Precedence: bulk
List-ID:
X-Mailing-List: git@vger.kernel.org
Archived-At:
Junio C Hamano pobox.com> writes:
>
> Thomas arcor.de> writes:
>
> > (1) all objects to be transferred to another repo
> > (2) all loose objects when starting a local repack
> > Case (1) can be fixed by transfer.unpacklimit but there is no fix for (2).
>
> Technically (1) is putting everything in a single pack to transfer, and it
> is only the receiving end that does the chopping.
>
> For (2), you could do something like
>
> keep=$( git rev-list --objects $some_rev |
> git pack-objects --delta-base-offset pack ) &&
> mv pack-$keep.pack pack-$keep.idx .git/objects/pack/ &&
> echo "keep $some_rev" >.git/objects/pack/pack-$keep.keep
>
> after finding a suitable $some_rev that is old enough so that it will be
> an ancestor of anything that matters in the future and gives small enough
> packfiles. You may want to try doing the above multiple times, by picking
> a few strategic ranges, e.g.
>
> for some_rev in v1.0 v1.0..v2.0 v2.0..v2.4 v2.4..v3.0
> do
> ... the above four lines come here ...
> done
>
Not really a porcelain-level solution ;-) but I will try it.
Thanks!
Is there any chance that (1) and (2) will be solved by using packsizelimit
in the future?
Will there be any porcelain/plumbing commands for creating/deleting
.keep files for packs?
---
Thomas