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

Re: Repository Redesign Question

From: William Nagel <bill_at_stagelogic.com>
Date: 2004-09-17 22:13:56 CEST

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Warren,

> When I initially setup my repository I wasn't really sure how I wanted
> to do branching, tagging, etc. I took the route where each project
> had its own tags, branches, and trunk directories and initially that
> worked. What got me into a little trouble was that some of my
> projects could be developed independently but when it comes to
> releasing them the combination of them makes the release. These
> individual projects will never be released by themselves.
>
> So what I currently have is:
>
> /project1/branches
> /project1/tags
> /project1/trunk
>
> /project2/branches
> /project2/tags
> /project2/trunk
>
> etc.
>
> What I'd like to have is:
>
> /project/branches/...
> /project/tags/release_1_0_0/subproj1
> /project/tags/release_1_0_0/subproj2
> /project/tags/release_1_0_0/subproj3
> /project/tags/release_1_3_7/subproj1
> /project/tags/release_1_3_7/subproj2
> /project/tags/release_1_3_7/subproj3
> /project/trunk/subproj1
> /project/trunk/subproj2
> /project/trunk/subproj3
>
> So now to my questions:
>
> 1. What is the best way to migrate my repository to this new structure?
>
> 2. How do I go about getting developers to migrate to this new
> structure?

Well, the best way to perform a migration is to use 'svn mv' a lot. As
for getting your developers to migrate, that sounds like a management
problem, and I don't think I can help you there---unless you mean how
do they migrate their working copies, in which case the easiest thing
is probably for them to just remove the old working copy and checkout a
new one (but a top-level 'svn up' should work too).

Before you redesign your whole repository, though. Think if this might
be a better solution:

Leave everything as it is now, and add a top-level /releases directory,
so that your repository looks like this

/project1/tags
/project1/trunk
/project1/branches
/project2/tags
/project2/trunk
/project2/branches
/releases/release_1_0_0/project1
/releases/release_1_0_0/project2
/releases/release_1_0_1/project1
/releases/release_1_0_1/project2

The convention of having just a tags, branches, and trunk directory is
a useful convention, but there is nothing in Subversion that requires
it. If it doesn't fit your process, don't use it (or build on it).

Hope this helps,

- -Bill

>
> Thanks in advance.
>
> --
> Warren Gavin
> wmopnc@gmail.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
> For additional commands, e-mail: users-help@subversion.tigris.org
>
>
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (Darwin)

iD8DBQFBS0WESwe0AHUdEwQRAvIiAJ9rsTnMzyUbFaLNDe8KJomkInm+sgCcDs+c
r2HXqGt+crySxGy/K7bBHWo=
=4il0
-----END PGP SIGNATURE-----

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Fri Sep 17 22:14:49 2004

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