From: Jason Miller <jason@milr.com>
To: John Kristian <jkristian@linkedin.com>
Cc: git@vger.kernel.org
Subject: Re: git-svn with big subversion repository
Date: Thu, 10 Mar 2011 16:32:55 -0800 [thread overview]
Message-ID: <20110311003255.GA13814@home.jasonmmiller.org> (raw)
In-Reply-To: <C99D031D.D0D9%jkristian@linkedin.com>
On 18:14 Wed 09 Mar , John Kristian wrote:
Mr Kristian:
> Thanks for sharing your experience. After patching git-svn, were you able to clone your subversion repository?
Indeed I was, it took about 48 hours to to the initial import. However,
I forgot to mention one other important thing that was a problem.
There is a pattern in svn of doing the following:
/trunk/module1
/trunk/module2
/trunk/module3
Then some branches will be like this:
svn cp /trunk/ /branches/mybranch1
and others might be:
svn cp /trunk/module2 /brancyes/mybranchofmodule2
If this hasn't ever been done on your repository, you can stop reading
now.
There is no way to represent this in Git directly, so the correct thing
to do here is to create a git repository for each module. Now the hard
thing is telling git-svn how to handle this. I ended up writing a
python script that reads in the SVN changelog and finds all of the
children of e.g. /trunk/module1. Any that were copied from /trunk, it
appends "/module1" to the path, and any that were copied from
/trunk/module1, it leaves alone. This then goes in the git
configuration file as the list of branches to fetch.
-Jason
prev parent reply other threads:[~2011-03-11 0:33 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-03-02 2:43 git-svn with big subversion repository John Kristian
2011-03-02 16:09 ` Thomas Ferris Nicolaisen
2011-03-03 4:13 ` Phil Hord
2011-03-05 10:53 ` Florian Weimer
2011-03-09 5:53 ` Jason Miller
[not found] ` <C99D031D.D0D9%jkristian@linkedin.com>
2011-03-11 0:32 ` Jason Miller [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=20110311003255.GA13814@home.jasonmmiller.org \
--to=jason@milr.com \
--cc=git@vger.kernel.org \
--cc=jkristian@linkedin.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
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;
as well as URLs for NNTP newsgroup(s).