This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[OT] Re: Git repository with full GCC history


On Fri, Jun 01, 2007 at 12:51:15PM +0200, Jan-Benedict Glaw wrote:
> On Fri, 2007-06-01 12:12:59 +0200, Gabriel Paubert <paubert@iram.es> wrote:
> > On Fri, Jun 01, 2007 at 04:47:11AM -0400, Bernardo Innocenti wrote:
> > > Be our guest, and let me know if you find a way to
> > > repack the repo to a smaller size.
> > 
> > I just upgraded my git to 1.5.2 and repacked the git repository
> > with git-gc --aggressive. It is quite impressive: the size of 
> > the pack file was almost cut in half, from ~23MB to ~12MB!
> 
> This is way more that I expected. I'm officially impressed right now.

Apparently this was an exceptional case, I've been regularly repacking
(git-repack -a -d) and more recently cleaning (git-gc) this repository 
since the early days of git (Mid 2005). This should therefore be compared 
to the first pack file generation and I don't believe that you will ever get
that factor on any repository created with a more recent version of git.

There is however a difference between even recent versions of git,
the pack for the linux kernel is today:

$ ls -l .git/objects/pack/
total 182140
-rw-r--r-- 1 paubert src  11887736 Jun  1 12:48 pack-dee9b723599778238ea89166583a609b415037bd.idx
-rw-r--r-- 1 paubert src 174426948 Jun  1 12:48 pack-dee9b723599778238ea89166583a609b415037bd.pack

with git (repack -a -d -f) from Debian Etch (1.4.4.4), and:

$ ls -l .git/objects/pack/
total 164232
-r--r--r-- 1 paubert src  11887736 Jun  1 12:24 pack-dee9b723599778238ea89166583a609b415037bd.idx
-r--r--r-- 1 paubert src 156105549 Jun  1 12:24 pack-dee9b723599778238ea89166583a609b415037bd.pack

using a freshly compiled git (1.5.2.146.gb75c6) and git-gc --aggressive.

That's in the ballpark of the 10% (actually a bit better) announced 
in the 1.5.2 release notes.

	Gabriel


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]