You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Hardi Gunawan <ha...@yahoo.com> on 2004/07/25 07:29:09 UTC

Help & advise on repository layout

Hi list,

I'm developing PHP application and I have difficulty
in creating the repository layout.  

My directory structure is as follows:
-------------------------------
/Project/common/core
/Project/common/module1
/Project/common/module2
.
.
.
/Project/common/moduleN

/Project/html/core
/Project/html/module1
/Project/html/module2
.
.
.
/Project/html/moduleN
-------------------------------

The trouble is, each of the modules (1 to N) belongs
to different developers.  The "core" directory is
under my control.

The reason of putting "common" and "html" directories
is to separate non-GUI (e.g. database password) from
the GUI counterpart.

What is the best way to layout/map this into the repository?


		
__________________________________
Do you Yahoo!?
Yahoo! Mail - 50x more storage than other providers!
http://promotions.yahoo.com/new_mail

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: Help & advise on repository layout

Posted by Hardi Gunawan <ha...@yahoo.com>.
Hi Bill,

Sorry for not following this thread for the past 1
week.

I have one big project, in which under it has many
modules to be created by many different developers.

Maybe I said it wrongly.  The directory layout in
apache's doc root is:

/Project/common/module1
/Project/common/module2
/Project/html/module1
/Project/html/module2

The above layout is not the repository layout.  I
don't know how to layout the repository.

One problem that I've thought of is, how do each
developers checkout their modules so that it falls
into place following the above directory structure. 
They would have to do a checkout of
/Project/common/module1 and /Project/html/module1. 
But wouldn't the other developer overwrite the .svn
directory when he check out /Project/common/module2
and /Project/html/module2?


--- William Nagel <bi...@stagelogic.com> wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> Hi Hardi,
> 
> Do you have more than one Project?  If you do, I'd
> consider putting 
> each project at the top level of the repository,
> with either a single 
> "branches" and a "tags" directory alongside common
> and html, or 
> individual "branches" and "tags" directories under
> each module, 
> depending on how your workflow works.  You may also
> want to consider 
> top-level "branches" and "tags" directories in order
> to tag/branch an 
> entire project.  Of course, this assumes that
> individual developers may 
> be creating branches and tags of modules as they
> develop.  If you don't 
> foresee that happening in your process, the
> top-level directories may 
> be sufficient.
> 
> Another possibility that I've found works well is to
> have a top-level 
> branches directory with subdirectories for each
> developer.  That way, 
> developers can create personal branches as they
> develop, and other 
> developers can avoid the expense of downloading
> those branches by only 
> checking out their own branches directory.
> 
> One of the biggest benefits of Subversion's copy
> paradigm for 
> branching/tagging is the flexibility it affords you
> as a user for 
> laying out your repository to match your own
> development process.  You 
> aren't even limited to putting branches and tags in
> directories called 
> "branches" or "tags".  For example, you could have a
> top-level 
> "releases" directory, where you put copies that tag
> releases of various 
> projects.
> 
> Hope this helps,
> 
> - -Bill
> 
> 
> On Jul 25, 2004, at 2:29 AM, Hardi Gunawan wrote:
> 
> > Hi list,
> >
> > I'm developing PHP application and I have
> difficulty
> > in creating the repository layout.
> >
> > My directory structure is as follows:
> > -------------------------------
> > /Project/common/core
> > /Project/common/module1
> > /Project/common/module2
> > .
> > .
> > .
> > /Project/common/moduleN
> >
> > /Project/html/core
> > /Project/html/module1
> > /Project/html/module2
> > .
> > .
> > .
> > /Project/html/moduleN
> > -------------------------------
> >
> > The trouble is, each of the modules (1 to N)
> belongs
> > to different developers.  The "core" directory is
> > under my control.
> >
> > The reason of putting "common" and "html"
> directories
> > is to separate non-GUI (e.g. database password)
> from
> > the GUI counterpart.
> >
> > What is the best way to layout/map this into the
> repository?
> >
> >
> > 		
> > __________________________________
> > Do you Yahoo!?
> > Yahoo! Mail - 50x more storage than other
> providers!
> > http://promotions.yahoo.com/new_mail
> >
> >
>
---------------------------------------------------------------------
> > 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)
> 
>
iD8DBQFBBU/SSwe0AHUdEwQRApUyAKCasz72mLl6hTVYg6CJS98Gof5iYgCg4PBA
> 7ZZDeVQEs7iScDCzIwvZWFE=
> =HUih
> -----END PGP SIGNATURE-----
> 
> 
>
---------------------------------------------------------------------
> To unsubscribe, e-mail:
> users-unsubscribe@subversion.tigris.org
> For additional commands, e-mail:
> users-help@subversion.tigris.org
> 
> 



	
		
__________________________________
Do you Yahoo!?
New and Improved Yahoo! Mail - 100MB free storage!
http://promotions.yahoo.com/new_mail 

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: Help & advise on repository layout

Posted by William Nagel <bi...@stagelogic.com>.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi Hardi,

Do you have more than one Project?  If you do, I'd consider putting 
each project at the top level of the repository, with either a single 
"branches" and a "tags" directory alongside common and html, or 
individual "branches" and "tags" directories under each module, 
depending on how your workflow works.  You may also want to consider 
top-level "branches" and "tags" directories in order to tag/branch an 
entire project.  Of course, this assumes that individual developers may 
be creating branches and tags of modules as they develop.  If you don't 
foresee that happening in your process, the top-level directories may 
be sufficient.

Another possibility that I've found works well is to have a top-level 
branches directory with subdirectories for each developer.  That way, 
developers can create personal branches as they develop, and other 
developers can avoid the expense of downloading those branches by only 
checking out their own branches directory.

One of the biggest benefits of Subversion's copy paradigm for 
branching/tagging is the flexibility it affords you as a user for 
laying out your repository to match your own development process.  You 
aren't even limited to putting branches and tags in directories called 
"branches" or "tags".  For example, you could have a top-level 
"releases" directory, where you put copies that tag releases of various 
projects.

Hope this helps,

- -Bill


On Jul 25, 2004, at 2:29 AM, Hardi Gunawan wrote:

> Hi list,
>
> I'm developing PHP application and I have difficulty
> in creating the repository layout.
>
> My directory structure is as follows:
> -------------------------------
> /Project/common/core
> /Project/common/module1
> /Project/common/module2
> .
> .
> .
> /Project/common/moduleN
>
> /Project/html/core
> /Project/html/module1
> /Project/html/module2
> .
> .
> .
> /Project/html/moduleN
> -------------------------------
>
> The trouble is, each of the modules (1 to N) belongs
> to different developers.  The "core" directory is
> under my control.
>
> The reason of putting "common" and "html" directories
> is to separate non-GUI (e.g. database password) from
> the GUI counterpart.
>
> What is the best way to layout/map this into the repository?
>
>
> 		
> __________________________________
> Do you Yahoo!?
> Yahoo! Mail - 50x more storage than other providers!
> http://promotions.yahoo.com/new_mail
>
> ---------------------------------------------------------------------
> 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)

iD8DBQFBBU/SSwe0AHUdEwQRApUyAKCasz72mLl6hTVYg6CJS98Gof5iYgCg4PBA
7ZZDeVQEs7iScDCzIwvZWFE=
=HUih
-----END PGP SIGNATURE-----


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org