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

Re: How to migrate a complex directory structure from SVN to GIT?

From
JBJehan Bing <jehan@orb.com>
Date
Jan 18, 2012, 18:47 UTC
Message-ID
<4F1713D4.9000602@orb.com>
In-Reply-To
<1326828837924-7197567.post@n2.nabble.com>
On 2012-01-17 11:33, Asuka wrote:
> I would like to migrate all branches and tags .. but unfortunately sometimes
> I have just a trunk directory and no branches or tags directory. Sometimes
> the branches are in a subdirectory, sometimes in a subsubdirectory. So how
> can migrate my svn in an efficient way?
 From the look of your example, each project is either a trunk, or have 
subdirectories for trunk/branches/tags so I don't think it's a problem. 
If you don't have branches or tags, just don't specify them when you 
clone your subversion repository.

If however you have a more complex layout, you can use "git svn init", then edit .git/config to suit your needs, then run "git svn fetch". And by "suit your needs", I mean you can add multiple "fetch=..." lines. In my case, I ended up having one "fetch=..." for each trunk, branch and tag. It was not efficient, it took 2 weeks to convert <30k revisions, ~200 branches/project, ~80 projects, but it works well enough for me.

	Jehan
Previous: Michael HaggertyNext: David Barr
Message 3 of 4 in “How to migrate a complex directory structure from SVN to GIT?”
  1. AsukaJan 17, 2012
  2. Michael HaggertyJan 18, 2012
  3. Jehan BingJan 18, 2012
  4. David BarrJan 27, 2012

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.