git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: git repository size vs. subversion repository size

From
Björn Steinbrink <b.steinbrink@gmx.de>
Date
Apr 4, 2008, 22:17 UTC
Message-ID
<20080404221728.GA30728@atjola.homenet>
In-Reply-To
<1086fb5f0804041502s7ab12202y3b0ec3640425eff@mail.gmail.com>
On 2008.04.04 18:02:56 -0400, Sean Brown wrote:
Show 13 quoted lines
> Last night I decided to see what storage size differences I might see
> between an svn repo and a git one.  So I imported a highly used
> subversion repository into git and was shocked to see how huge the git
> version was.  I used a repo that has a lot of branches and tagged
> releases just to make sure importing into git would in fact keep all
> of the history.  It did keep the history, but the total disk usage was
> very different:
> 
> $subversionbox # du -hs ./my_sample_website/
> 67M	./my_sample_website
> 
> $localhost # du -hs ./git-samplesite/
> 3.6GB ./git-samplesite/

How much of that is in the .git/svn directory? The contents of that directory are used to map git commits to svn revision and git versions before 1.5.4 had a quite space consuming file format for that. The new format is a lot better. If you want to switch completely, you can even just delete the .git/svn directory, as that's only required as long as you want to interact with the corresponding svn repository.

And finally, you might want to repack to repository once after the initial import, to get a smaller repo. Something like: git repack -a -d -f --window=100 --depth=100

Björn
Previous: Sean BrownNext: Stephen Bannasch
Message 2 of 11 in “git repository size vs. subversion repository size”
  1. Sean BrownApr 4, 2008
  2. Björn SteinbrinkApr 4, 2008
  3. Stephen BannaschApr 4, 2008
  4. Steven WalterApr 5, 2008
  5. Stephen BannaschApr 5, 2008
  6. Björn SteinbrinkApr 5, 2008
  7. Eric HanchrowApr 14, 2008
  8. Sean BrownApr 5, 2008
  9. Björn SteinbrinkApr 5, 2008
  10. Jan HudecApr 13, 2008
  11. Shawn O. PearceApr 5, 2008

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.