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

RE: Project and Repository Philosophy

From: Monks, Peter <peter.monks_at_vignette.com>
Date: 2005-05-10 19:01:31 CEST

G'day xev,

With SVN, reorganising assets within a single repository is trivial
whereas reorganising assets across multiple repositories is more
difficult. Therefore if you have any doubts whatsoever about layout,
I'd suggest you start out with everything in a single repository -
that way if you realise later on that there's a better way of
organising things, it'll be easy to reorganise everything.

One of the (many!) great things about SVN is that users of a
repository don't have to check out the entire thing - instead they
can check out just a subset of the tree that's stored in the
repository. In your case this could be useful in that it would allow
you to create four subdirectories within the repository, one for each
of your projects, something like:

    repositoryRoot/
        project1/
        project2/
        project3/
        businessObjects/

These would consititute the four "checkout points" that users of the
repository would checkout to their local working copies.

Another thing to consider is your branching / tagging strategy. If
the projects can only be branched or tagged as a single unit, your
repository might look something like:

    repositoryRoot/
        branches/
        tags/
        trunk/
            project1/ <- checkout point for project #1
            project2/ <- checkout point for project #1
            project3/ <- checkout point for project #1
            businessObjects/ <- checkout point for business objects

In contrast, if each of the projects can be branched independently,
your repository might look something like:

    repositoryRoot/
        project1/
            branches/
            tags/
            trunk/ <- checkout point for project #1
        project2/
            branches/
            tags/
            trunk/ <- checkout point for project #2
        project3/
            branches/
            tags/
            trunk/ <- checkout point for project #3
        businessObjects/
            branches/
            tags/
            trunk/ <- checkout point for business objects

Cheers,
Peter
 
----------------------------------------------------------------------
Peter Monks http://www.sydneyclimbing.com/
pmonks_at_sydneyclimbing.com http://www.geocities.com/yosemite/4455/
----------------------------------------------------------------------
 

 
 

> -----Original Message-----
> From: xevious@heavyphoton.com [mailto:xevious@heavyphoton.com]
> Sent: Tuesday, May 10, 2005 9:40am
> To: users@subversion.tigris.org
> Subject: Project and Repository Philosophy
>
>
> Hello, all. I am another of those CVS refugees. I have
> been using CVS for many years but SVN has finally won me over.
>
> I have read the FAQ. I have read (most of) the Subversion book.
>
> And, I am still undecided about how to lay out our repositories
> in relation to our projects.
>
> We have three projects (plus documentation) that we will use as
> the pilot for our SVN migration. These projects are only loosely
> linked. However, they share a large number of classes (business
> objects) that we really consider to be a fourth project.
>
> So, lump all four projects into one repo? Or, one repo for each
> project?
>
> -xev
>
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
> For additional commands, e-mail: users-help@subversion.tigris.org
>
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Tue May 10 19:09:03 2005

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