[cvsnt] Re: Workflow advice saught
John Peacock
jpeacock at rowman.com
Tue Mar 18 20:59:35 GMT 2003
Drew McLellan wrote:
> web server at edit time. This means that each developer needs to have a
> local web server running when editing/testing files prior to committing
> them back to the repository.
Not at all. It just means that the web server needs to have it's own sandbox
that is automatically synced to the repository, see below.
> I think this is the bit that’s bothering me … for every site in every
> project for every developer I need to have:
>
> a) an IIS website
> b) a DNS record to access the site
There is no way to get away from setting up a new IIS virtual site for each
project. Similarly, if you want to use only a single IP address for each of
these virtual sites, you will need to set up an A record for the host name for
each web site. This isn't that much work (and in fact is the same amount of
work whether it is sites on a local machine or a single test server).
> c) a ‘working’ folder on a server somewhere for files.
That's the piece your are mistaken about. The simplest way to deal with it is
to place the repository and the test IIS server on a single machine. Checkout
each website into a sandbox and point the virtual site at that directory. Use
the POSTCOMMIT file to keep the sandboxes in sync with the repository (I have a
somewhat messy script to do this; I am hoping to refine it to the point where it
is something I could allow others to see). Finally, make the production web
server have it's own manually updated sandbox, so you can schedule a release
only when you are ready.
The really nice thing about this mode of operation is that you can actually
develop on a branch, and both the programmer and test web site can keep in sync
with the branch, but the production site still remains on the HEAD branch (and
you can make minor fixes there). This is the only sane way to perform massive
rewrites.
HTH
John
More information about the cvsnt
mailing list