Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

Migrating svn repo from standard layout to custom layout in same project

dstainer August 6, 2012

Presently we have the current structure:

http://<companyname>.jira.com/svn/<project-name>/{trunk,tags,branches}

Standard stuff for a single project repository.

However, we'd like to move from this structure to something more flexible, while still remaining under the same project. So for example something more like this:

http://<companyname>.jira.com/svn/<project-name>/module1/{trunk,tags,branches}
http://<companyname>.jira.com/svn/<project-name>/components/component1/{trunk,tags,branches}
http://<companyname>.jira.com/svn/<project-name>/components/component2/{trunk,tags,branches}

Hopefully, you get the point. In other words, we want a heck of a lot more flexibility to adjust where the source code is for our various modules/components while remaining under a single project umbrella.

My questions are the following:

  1. Is it possible to migrate our existing structure to the newly proposed one without have to start fresh, etc?
  2. What are the problems with this type of approach?
  3. What kind of integration issues with FishEye and Crucible do we need to watch out for?
  4. Would we need to submit tickets for this to get accomplished?

Thanks

Derek

1 answer

0 votes
Michael Knight
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
August 7, 2012

A support engineer can change a FishEye repository's configuration from:

  • https://<companyname>.jira.com/svn/<project-name>/{trunk,tags,branches}

to:

  • https://<companyname>.jira.com/svn/<project-name>/<moduleX>/{trunk,tags,branches}

but not any other layout.

There are two ways to change your existing SVN structure to the new one:

  1. Simply creating the necessary module directory and 'svn mv'ing your code into place; or
  2. Dumping the repo, rewriting paths through the repo's history (using something like svn-dump-reloc) and importing it again.

The problem with #1 is that your history pre-move won't be handled properly, which may or may not be an issue for you. The problem with #2 is that it's much more complicated and, depending on the complexity of your existing structure, may not be workable. Although if it does work, your history will be handled properly.

Since you can dump and import your SVN repository without needing to go through Support, the only ticket you would need to raise would be for changing FishEye's configuration, presumably once your dump had already been prepared and verified locally, ready for import.

dstainer August 7, 2012

What component causes this restriction? I guess my question is that if we were hosting our own subversion repository we could use any structure we desired. So what is the piece that is holding this up on your side of the fence? Why can this work with FishEye and SVN outside of OnDemand and not inside?

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events