forgot to reply all.
---------- Forwarded message ----------
From: Will Appleton <wfappleton@gmail.com>
Date: Jun 22, 2007 2:39 PM
Subject: Re: How to organize a repository?
To: Chris <shef31@yahoo.com>
On 6/21/07, Chris <shef31@yahoo.com> wrote:
> I'm struggling to decide how to organize our projects. From a high
> level, here are the directories in our system:
>
> /src -- the main source directory
> /old_src -- source for an old version, still making bug fixes
> /src-client1 -- source code for a particular client
>
> /deploy -- readme.txt, license.txt for main proj
> /lib -- 3rd party libraries, shared by all
> /doc -- end-user documentation
> /design_docs -- internal, developer documentation
>
> /webapps -- client-specific web applications
> /webapps/client1 -- webapp for client1
> /webapps/client2 -- webapp for client2
>
> /data -- data dir. big, should not be stored in svn
> /data/client1 -- data for client1
> /data/client2 -- data for client2
>
> /test_database -- test data, used by unit tests
>
> We use Eclipse for development.
>
> Questions:
>
> Should every directory be a project, with its own /trunk, /branches, and
> /tags subdirectories?
>
> This seems like a lot of directories, plus it isn't clear to me how to
> keep releases in sync. Suppose /src release number 1.5 depends on
> certain versions of 3rd-party libs, and relates to docs at a certain
> revision?
>
> Should I have everything in one giant repository?
>
> Can someone post some sample directory and repository layouts?
OK, the indents weren''t very clear, so I've used rich text formatting to
get a fixed width font. (sorry for no plain text...)
I'd arrange it *something* like this:
|--trunk
|----src
|----old_src
|----src-client1
|----deploy
|----lib
|----doc
|----design_docs
|----webapps
|------client1
|------client2
|--tags
|----Release10.1
|------deploy
|------design_docs
|------design_docs
|------doc
|------lib
|------old_src
|------src
|------src-client1
|------webapps
|--------client1
|--------client2
|----Release10.3
|------deploy
|------design_docs
|------doc
|------lib
|------old_src
|------src
|------src-client1
|------webapps
|--------client1
|--------client2
|--branches
|----Project001
|----Project002
|----Project003
I've shown the repo layout after a couple of releases are tagged. There's a
few projects as well, but I haven't shown the dir layout for the projects.
BTW, have you read the SVN Book section on repo layout?
http://svnbook.red-bean.com/nightly/en/svn-book.html#svn.tour.importing.layout
HTH
-=W=-
Received on Fri Jun 22 21:43:38 2007