[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: SVN as CMS

From: Les Mikesell <lesmikesell_at_gmail.com>
Date: Fri, 20 Mar 2009 13:10:37 -0500

Reedick, Andrew wrote:
>> - although one group I worked with some time ago put their
>> compilers and build tools under version control to make the builds
>> more predictable.
> Technically that's not enough. You need to CM (configuration
> management) the build environment. Servers, OS, shared libraries, shell
> variables, user permissions, etc.. Unix/Java is pretty simple to CM,
> but Windows is "impossible" IMO, short of using virtual machines.
> Windows CM challenges: registry, dlls scattered all across the system,
> dll hell, mandatory OS patches pushed by the SysAdmins, self-updating
> apps/compilers, the general opaqueness of Windows, etc.. Heck, I've
> installed the C# and VB .net Express compilers, which I have no way to
> version control since there it was installed over the net instead of
> from a downloaded binary.

This was back in the days before C# and .net, but when compilers were
changing frequently with different and incompatible extensions. This
group did server side tools and had to be able to repair and replace old
components that might still be running in old environments (some
specialized hardware, etc.).

> Fortunately, if you're working with software that's constantly being
> updated for internal customers, you can ignore most of these problems
> since deployed binaries quickly become obsolete/end-of-life.

At the same time another group working on the client-side components
made that assumption and didn't bother putting any tools under version
control - and they used the same build server for years. They had a
problem once where the build server crashed and was restored with a
slightly different disk layout when it was replaced. They didn't
actually lose anything, but it took a couple of weeks before they found
and fixed all of the path and location assumptions that had been
embedded into the build tools and scripts over a few years. Version
control itself wouldn't have changed this, but the practice of checking
out everything you need in different environments and repeating the
entire build/test operations would probably have kept things more
flexible and avoided any surprising dependencies.

   Les Mikesell
To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_subversion.tigris.org].
Received on 2009-03-20 19:11:28 CET

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.