info-cvs
[Top][All Lists]
Advanced

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

Re: CVS best practice


From: Shane Turner
Subject: Re: CVS best practice
Date: Thu, 22 Jul 2004 16:32:34 -0300
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7) Gecko/20040616

Jim.Hyslop wrote:

Rick Genter wrote:
The system I work on consists of a number components. Each component is
a separately built Java application, all referencing portions of a
common database. Different components use different tables; some tables
are shared by many components, while some are used by a single
component. Over the life of the system, schema changes on the same table may have been required by different applications for different purposes.

We script all of our database changes and store the scripts in our
repository, but this has led to some "spirited" debate about repository structure. Our DBA wants to have a database-centric repository hierarchy
where all database scripts are stored in a CVS module named for the
database to which the script applies. There would be submodules for
Tables, Stored Procedures, Indexes, etc. I, on the other hand, want
scripts associated with a particular application to be stored in "SQL"
or "Schema" submodule under the module for that application.
In this case, you can have your cake and eat it, too!

Follow the DBA's suggestion: create a completely independent CVS module that
contains all the schema scripts. This keeps all the scripts in one place,
and ensures that the schema is consistent. Whether you go to the extent of
having a subdirectory for Tables, another for Stored Procs, etc. is between
you and your DBA.

In each of the projects that uses the database, add an "ampersand module"
that points to the schema module to each project in CVSROOT/modules file
that needs it. See the documentation for more details:
https://www.cvshome.org/docs/manual/cvs-1.11.17/cvs_18.html#SEC159

End result: The DBA gets to see all the files in one location, and you get
to see the schema files with each project. If one project changes the
schema, the other projects automatically inherit it. Everyone goes home a
winner!

I second Jim's suggestion. It answers your question much better than my response :)

Shane

--
Shane Turner, Senior Software Engineer | InfoInterActive Corp. (An AOL Company)
E address@hidden     | W www.infointeractive.com
AIM: iiaShane ICQ: 60761162            | V: 902-832-2633 F: 902-832-1015
-----BEGIN GEEK CODE BLOCK-----
GCS d-(+) s: a- C++$ ULS++ P+(++) L++ E@ W+ N o? K? w O M- V !PS !PE Y+ PGP
t++@ 5+ X+ R tv b+ DI+ D+ G e++ h--- r+++ y+++ -----END GEEK CODE BLOCK-----





reply via email to

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