I was thinking about a similar strategy also. The problem with things like ASP, PHP, ColdFusion etc. is that they require a server to operate and also often require you to monitor changes to databases, either a flavour of SQL or Access.
As far a the 'normal' CVS workflow goes, basic HTML/JavaScript is easy because after you 'checkout' a version to your local computer, you can view these pages from your local version.
I was doing research on how to apply CVS to this problem for a developer I am working with and stumbled upon your MX plugin, which was subsequently purchased. Now that we have it we need to come up with a strategy for implimenting it.
We are running a Win 2003 Server with ColdFusion and MSSQL as our development server. I managed to get this up and running with CVSNT and have been able to access and change files in a test repository, admittedly not with your plugin, but with another client.
Reading 'admin' comments is a bit discouraging, but I think are a bit misleading also. In developing a strategy, two spring to mind -
Strategy 1
a) Create a 'non-served' repository with the imported site structure on the server.
b) Setup workstations to run the Server and Server applications and make the 'checked out' versions' folders 'active'
c) Test changes on the 'local version' then commit to the repository
This would be handy but pricey to run on each machine and may run into problems if the workstation setups change.
Strategy 2
a) Create a 'Served' repository with the imported site structure 'on the server'.
(In spite of what has been stated by 'admin', it would seem that once a file had been commited to the server, the 'current version' is stored intact, not just the original version plus the differences over time. This may be different on a non-Win server, not running CVSNT)
b) Checkout local versions of the Site to work on
c) Make changes 'locally' then commit to repository
d) View and test from server
with this strategy you don't need to run a local server etc. you would also have to be diligent in tagging changes so that contributors were only updating to, or checking out finished changes. Alternatively, you could branch any time you wanted to make a change then merge, however this could be too laborious for day to day, minor development.
I'm trying to look at implimenting Strategy 2 as I believe that this is the best way to account for future growth. There may be some battles when it comes to branches etc. but I think we will be able to overcome these. |