public inbox for git@vger.kernel.org 
 help / color / mirror / Atom feed
From: "Shawn O. Pearce" <spearce@spearce•org>
To: Sean Brown <seanmichaelbrown@gmail•com>
Cc: git@vger•kernel.org
Subject: Re: git repository size vs. subversion repository size
Date: Fri, 4 Apr 2008 23:11:50 -0400	[thread overview]
Message-ID: <20080405031150.GQ10274@spearce.org> (raw)
In-Reply-To: <1086fb5f0804041502s7ab12202y3b0ec3640425eff@mail.gmail.com>

Sean Brown <seanmichaelbrown@gmail•com> wrote:
> 
> Here are the steps I took (locally):
> 
> mkdir git-samplesite-tmp
> cd git-samplesite-tmp
> git-svn init http://subversion.myco.com/my_sample_website --no-metadata
> git config svn.authorsfile ~/Desktop/users.txt   # mapped svn users to git users
> git-svn fetch
> git clone git-samplesite-tmp git-samplesite
> 
> I did this based on reading the documents in the git wiki, so I
> assumed they were "best practice."  Did I do something wrong?

The last command there didn't get you the most efficiently packed
repository possible.  More recent versions of git-clone will prefer
to hardlink all of the loose objects and packs from the source to
the destination, so the clone can occur more quickly when they are
on the same filesystem.

Really what you want to do here is repack the cloned directory
(cd git-samplesite && git repack -a -d -f) and maybe include
some aggressive --depth and --window options (e.g. 100/100)
if you have some CPU time to burn and are reasonably certain
you will be keeping the result.  You only have to spend that
CPU time once when converting from SVN, and all future clones
from this one will benefit.

But your really major disk usage was due to what someone else
pointed out, which was missing the "-s" flag to git-svn.  So the
Git working directory was huge, as we created working files for
every single branch and every single tag.  Ouch.

-- 
Shawn.

      parent reply	other threads:[~2008-04-05  3:12 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-04-04 22:02 git repository size vs. subversion repository size Sean Brown
2008-04-04 22:17 ` Björn Steinbrink
2008-04-04 23:49   ` Stephen Bannasch
2008-04-05  0:01     ` Steven Walter
2008-04-05  0:04       ` Stephen Bannasch
2008-04-05  0:18       ` Björn Steinbrink
2008-04-14 15:28       ` Eric Hanchrow
2008-04-05  2:27   ` Sean Brown
2008-04-05  2:34     ` Björn Steinbrink
2008-04-13  9:57       ` Jan Hudec
2008-04-05  3:11 ` Shawn O. Pearce [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080405031150.GQ10274@spearce.org \
    --to=spearce@spearce$(echo .)org \
    --cc=git@vger$(echo .)kernel.org \
    --cc=seanmichaelbrown@gmail$(echo .)com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox