Subversion is a very light weight system. I have really yet to see a
site that has "underconfigured" their server for Subversion. To me the
main issues are:
* Network bandwidth: Subversion sends a lot of stuff over the network,
but it still usually isn't a bottleneck. Where bottle necks occur is
when a high bandwidth application shares the same server or network
segment and prevents Subversion from being able to communicate through
the network.
My suggestion is to make sure Subversion is its own server and make
sure that other processes aren't hogging your network. Subversion
doesn't need much iron, but it does need room to breath.
* The other big configuration issue is backup and failover. Hard disks
and computer components wil fail. It will happen sooner or later. And,
many sites simply don't have a contingency in place when it does
happen. In a development environment, your work stops when the version
control system stops. You can limp along if your defect tracking
system goes down. You can still develop if your database crashes. You
cannot do a thing if you can't get and save new versions of your
files.
You need to backup your repository in such a way that you can quickly
recover when your hardware fails. Mirrored systems that automatically
fail over would be great, but that's not always practical. How often
do you backup? Can you immediately use your hotcopy backup if your
Subversion server goes down? How long will it take you to reload your
repository from a dump? Can you do repository mirroring?
Fortunately, Subversion can be down for awhile before all work stops,
so immediate failover isn't a complete necessity (If ClearCase goes
down, all dynamic views are nonfunctional and developer's work stops
in its tracks.)
* The other consideration is your platform and developer systems.
Subversion on *nix systems are usually case sensitive. FooBar.java and
Foobar.java are two different files. Subversion on Windows isn't case
sensitive: FooBar.java and Foobar.java are the same file. MacOS X Is
*NORMALLY* case insensitive in the same way (although it is Unix
based). If you have *nix Subversion clients, you should have a *nix
based system. Windows can really go either way.
--
David Weintraub
qazwart_at_gmail.com
Received on 2010-09-20 05:11:40 CEST