Summing it up...

You have a repository that contains your current code.  Both the development
and live environments are "checked out" from the repository. When you
complete changes to a page, you commit the page.  You then update the live
environment with the new code.  Everyone  who has checked out he code
should, at the start of each day...and potentially several times throughout
the day...run an update to pull current code from the repository to ensure
they have the current version of the page they are working on.  I generally
do an update before I start working on a page.  Now lets say you and I are
working on the same page and we both commit the page.  Subversion will
detect this and notify that there is a conflict.  It will then (depending on
the setting and how the code conflicts) either merge the files automatically
if there are no conflicts between the code...ie you changed line 5 and I
changed line 20 and everything else is the same...or notify that last
committer that there is a conflict and prompt you to manually do a diff and
reconcile the code.  SVN also handles branches and tags.

As far as all these checkouts, commits, updates, etc...

There are several tools that can be used.  You can do this via a
command-line interface.  You can use a third party tool like TortoiseSVN
(another open source and free tool that is awesome...it interfaces with
windows and integrates into the drop down menus in explorer).  The third
option is via plugins with your IDE.  Both Eclipse and Dreamweaver have
plugins for SVN.  Updates can also be achieved via automatic scripting.  You
can set up a script that automatically updates your live environment each
time a file is committed to the repository (amongst many other automatic
functions that can be set up with scripting).

I would learn the repository and how t works and then once you have it set
up the way you want, then worry about the automation.

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

Ok... Without sounding too naive about versioning and more complex dev
systems... Help me understand this a bit better.

1. Local Development with local code to those machines. How do you keep
those machines current? Many of the coldfusion programs we code and make
improvements to are part of a huge enterprise system that would only test
locally correctly with the other parts of the system present. Say you have 5
developers, 1 developers works on something, how do the others get HIS
changes to their LOCAL code so they are working on something or do those 5
developers only work on the code they need?

2 How are things "Checked out" and copied to the local system for
development and then checked back in and copied back to the dev server or
SVN repository?

3. Would I be best served by reading the SVN manual cover to cover and the
above questions would be self explanatory?? Most docs I have read deal more
with compilation and build numbers than the way COLDFUSION or say PHP works,
so is there some specific docs dealing with versioning of specific web
technologies like that where there is no compilation of code before
implementation?

4. Once I get the terminology down for just the developing part. I will
worry about ANT and scripts to populate production systems, or do I need to
worry about that now as well?

Thanks.

On 10/6/07, Jochem van Dieten <[EMAIL PROTECTED]> wrote:
>
> J W wrote:
> > I am looking to have better version control at our company and am wonder
> how
> > YOU deal with this. What is your setup?
>
> Local development against a local CF and local resources. Full working
> copy of a SVN repository. Code gets tagged in the repo and then a build
> server will use an Ant script to pull in drivers, externals and
> configuration files and generate several EAR files, both a compiled and
> a source version for each CF version supported. Source versions go to
> the test environment and when approved the compiled version goes to the
> staging environment where the customer will approve it for final
> deployment.
>
>
> I second the recommendation for SVN as a centralized versioning system
> but you shouldn't pay too much attention to all the people claiming it
> is hard to set up. It may be tedious when you do it for the first time,
> but not hard, you just have to follow the manual. And be warned about
> all the blogs and wiki's too: I'm sure their authors write them with the
> best intentions, but few of them add something that is not in the
> manual, most of them are outdated and none of them cover important
> issues such as the proper way to secure and backup your repository. And
> don't even think about using that one-click installer, version 1.2.3 is
> ancient and binary incompatible with the current versions.
>
> Jochem
>
> 



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Download the latest ColdFusion 8 utilities including Report Builder,
plug-ins for Eclipse and Dreamweaver updates.
http;//www.adobe.com/cfusion/entitlement/index.cfm?e=labs%5adobecf8%5Fbeta

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

Reply via email to