We have an upgrader.

So there is code that says something like

<cfif version lte "1.4.1">
        Create table
        Drop table
        Alter table
        Insert some default values for new tables
</cfif>

<cfif version lte "1.4.2">
        Create table
        Drop table
        Alter table
        Insert some default values for new tables
</cfif>

So if I check out the code at 1.4.1 and run the upgrade, it will create all
the databases for me.

It obviously doesn't handle getting data back to that format, but this is an
unlikely scenario.

What it gives you is a history of changes to your databases, and a means to
restore (excluding data) all code and schemas to a version.

The history bit is really handy. When did that table get that extra column?
It will be in the upgrader.

It's a bit more work than making changes in the designer, but worth it.

In the scenario you described, the client is on 1.5 you check that out, run
the upgrade, have an empty working system. Make your fix, deploy to client,
done as that clients data is in the 1.5 format, no need for the database
backup.

Regards
Dale Fraser

http://learncf.com

-----Original Message-----
From: Aaron Rouse [mailto:[EMAIL PROTECTED] 
Sent: Monday, 8 October 2007 12:06 PM
To: CF-Talk
Subject: Re: SOT: How do you version control with your CF code?

Could you explain that with a little more detail.  What code(language) is
going to track all of the table/column changes and track any data
manipulation that is needed between versions of the database structure?
Also if you are creating a database of that era, say version 1.5, does this
mean it is going to drop the database of the version 2.0 era in order to
have a place to put the 1.5 era?

On 10/7/07, Dale Fraser <[EMAIL PROTECTED]> wrote:
>
> Control the databases through code.
>
> Then if you check out your code at 1.3.2
>
> It should be able to create databases of that era.
>
> Regards
> Dale Fraser
>
> http://learncf.com
>
> -----Original Message-----
> From: Aaron Rouse [mailto:[EMAIL PROTECTED]
> Sent: Monday, 8 October 2007 11:23 AM
> To: CF-Talk
> Subject: Re: SOT: How do you version control with your CF code?
>
> What do you do when client needs a fix on version 1.5 which has
> significant
> database differences when compared to version 2.0 that you are currently
> working on?  We just maintain a separate copy of the DB for the versions
> for
> cases like that but just curious on  how others do it.
>
> On 10/7/07, J.J. Merrick <[EMAIL PROTECTED]> wrote:
> >
> > Rick,
> >
> >
> >
> > 3. Branch and tagging. "me: ::working on version 2.0:: client: I need
> > to you fix something that is broken on the live server! me: ok::
> > switch to the trunk which is version 1.5, fix, deploy, switch back to
> > v2.0 branch" no mess and no thought
> >
>
>
>
>
> 



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
ColdFusion is delivering applications solutions at at top companies 
around the world in government.  Find out how and where now
http://www.adobe.com/cfusion/showcase/index.cfm?event=finder&productID=1522&loc=en_us

Archive: 
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:290499
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4

Reply via email to