[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: slightly off topic - Directory Structures

From: Karl-König Königsson
Subject: Re: slightly off topic - Directory Structures
Date: Mon, 23 Jun 2003 14:31:34 +0200
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.4) Gecko/20030529

Hash: SHA1

address@hidden wrote:
| <Project Name>/build ? This is where code get built. The base of this
| directory should mirror src.  This should only be written to by make or
| make substitute ( i.e. ant )  These files should not get checked in.  Only
| the directory stubs should be check in

There is no need then to have this version controled, is there? You would
therefore not need to store it in CVS.

It makes sense from a build perspective but I would suggest that you let Ant
create the build structure for you and have a "clean" task remove it after you
are done. You could also have a ".cvsignore" file on top that specifically
instructs CVS _not_ to take "build" into account.

| <Project Name>/lib ? This is where any libraries or external dependencies
| that are needed for this project are stored.

Having a "lib" like this is always a ballance act -- it is generally not a good
idea to store binary data in CVS unless it is _really_ needed. On the other
hand, you could have jar files that are external to your project that might
change in the future, and then it makes sense to keep them in CVS. This is
something to think about of course.

Generally speaking: external binaries that are crucial to the project should
probably be stored in CVS, all others should be handled otherwise. You could,
for instance, have a special ant task that copies such files from a network
repository. If you have the name of the repository reflect some sort of version
you might even handle version control thusly:

- - all binaries are stored in directories that reflect the version
- - Ant handles the copy stuff, new versions are added by changing the build.xml
file, thus providing the traceability needed (but you may not delete old
version directories, of course)

| <Project Name>/config ? This is where any configuration files are stored.

Good thing. Again, let Ant do the copying and building and you keep track of
configuration. Easy to find the config files this way, and still be able to
handle a complex system. Needs fiddling with Ant but you have to do that anyway.

| <Project Name>/Common ? This is a link to the Common Project.  This link is
| provided as a convenience when doing development.  This directory should
| only be used in development and not in production

I don't get this one.

| <Project Name>/docs ? All Documentation for the Project
| <Project Name>/test ? an area for any test scripts or anything related to
| testing this project

Well, sort of. If you are doing Java you might want to check out JUnit. It
would then be a better plan to add a junit directory/package for each package
in your project. This would let you do your testing fairly easily and also
possibly remove the need for a specific test directory.

| **********************************************************************
| The information contained herein is confidential and is intended solely for
the addresse(s).  It shall not be construed as a recommendation to buy or sell
any security.  Any unauthorized access, use, reproduction, disclosure or
dissemination is prohibited.
| Neither SOCIETE GENERALE nor any of its subsidiaries or affiliates shall
assume any legal liability or responsibility for any incorrect, misleading or
altered information contained herein.
| **********************************************************************

Yeah, right... Maybe you should get rid of this. It just does not make sense on
a mailing list, but that has been pointed out in excruciating detail elsewhere.

"Share and enjoy", would perhaps be a better alternative... :-)


        Karl-Koenig Koenigsson

- --
CONG (n.)
Stange-shaped metal utensil found at the back of the saucepan cupboard. Many
authorities believe that congs provide conclusive proof of the existence of a
now extinct form of yellow vegetable which the Victorians used to boil
(The Meaning of Liff, Douglas Adams)
Version: GnuPG v1.2.1 (MingW32)
Comment: Using GnuPG with Mozilla -


reply via email to

[Prev in Thread] Current Thread [Next in Thread]