[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: changing repo layouts

From: Ryan Schmidt <subversion-2009b_at_ryandesign.com>
Date: Wed, 19 Aug 2009 02:40:26 -0500

On Aug 19, 2009, at 01:46, Erick Calder wrote:

> On Aug 15, 2009, at 10:18 PM, David Weintraub wrote:
>
>> Then use svnadmin dump and load to create a single Subversion
>> repository. The Subversion repository revisions will come out
>> somewhat wacky because all of module "A"'s transaction will come
>> after module "B"s transactions, but it really doesn't affect
>> anything in the long run.
>
> I'm a little queasy about that approach just because, not really
> knowing SVN, I don't know why I'd care about A's transactions being
> after B's.

A reason you might care is that you will not be able to use the
Subversion feature that would otherwise let you specify a date
anyplace you can specify a revision, e.g.

svn cat somefile.txt -r '{2009-08-15}'

> I guess I'm not even sure what you mean by transactions.

Transactions are what revisions are called before they're finalized.

> so I decided to just let the utility create its structure and then
> move the directories as I see fit... however, when I try it I get
> an error:
>
> # svn mv svn://janus/trunk/www /www/trunk
> svn: No support for repos <--> working copy moves

That error message looks correct. You probably meant:

# svn mv svn://janus/trunk/www svn://janus/www/trunk

Probably still won't work like that. I imagine you'll have to check
out svn://janus and then use svn mkdir and svn mv and then commit the
whole thing.

> and additionally, in reviewing the structure it created, I'm a
> little confused because under CVS there aren't branches and tags...
> so I'm not sure where to create these directories e.g. if I have a
> project /Text/Roman, should I have /Text/trunk, /Text/Roman/trunk?
> and what if there's /Text/Roman/Test (which isn't really a project
> but a directory under a project) - then in that case shall I
> create /Text/Roman/Test/trunk too?
>
> yikes!
>
> and then there is the /tags directory that seems to contain /tag/
> directory where the directory seems to be a project... can I safely
> assume it's a project? in that case could I have situations where
> there are two projects under the same tag?
>
> and still under /branches I find all my projects but there is a
> directory "arix" in the middle...
>
> I really do wish cvs2svn did the right thing to avoid all this
> confusion!

If you have a single repository containing multiple projects, you
must decide what unit you would like to be able to tag and branch. If
you would like to be able to tag and branch each project separately,
then the layout you want is

repo/project1/trunk/...
repo/project1/branches/branch1/...
repo/project1/branches/branch2/...
repo/project1/tags/tag1/...
repo/project1/tags/tag2/...
repo/project2/trunk/...
repo/project2/branches/branch1/...
repo/project2/branches/branch2/...
repo/project2/tags/tag1/...
repo/project2/tags/tag2/...

If the projects are all closely related and you want to tag and
branch them together as a single unit, then the layout you want is

repo/trunk/project1/...
repo/trunk/project2/...
repo/branches/branch1/project1/...
repo/branches/branch1/project2/...
repo/branches/branch2/project1/...
repo/branches/branch2/project2/...
repo/tags/branch1/project1/...
repo/tags/branch1/project2/...
repo/tags/branch2/project1/...
repo/tags/branch2/project2/...

You won't create these branch1/branch2/tag1/tag2 directories now, I'm
just showing you where the branch and tag names would appear in the
directory structure once you do start creating tags and branches
(which you simply do by copying the trunk to the correct place).

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=2385124

To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_subversion.tigris.org].
Received on 2009-08-19 09:41:43 CEST

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.