which version control system?

Do you have a question? Post it now! No Registration Necessary.  Now with pictures!

Threaded View
Hi all

we are thinking of using a version control system at work. I was
wondering what are some of the issues we should take into
consideration when deciding upon which one to use? and which one/s you
would recommend?



Re: which version control system?

Quoted text here. Click to load it

I have worked with SourceSafe (6.0), CVS and Subversion. Neither of them  
is ideal, but we don't live in an ideal world and they are all workable.  
Each of them is better than working without them.

There are a few things you could want with those systems:
- Having an easily accessible backup. They all do that.
- Being able to work on the same files on different development  
machines. They all do that, too. SourceSafe 6.0 has to be configured to  
enable it, otherwise it will lock the file for other users. If you like  
locking, it is possible with the other systems as well (though rarely used).
The alternative, conflict handling, is used on CVS and Subversion (and  
newer versions of SourceSafe, I think) and does well for programming  
code, but not for resource files. Any file where changes are added at  
the bottom will always be in a conflict state when more developers  
changed it. Off course, binary files are a bit of a problem as well.
- Keeping multiple versions (branches) of the same file. CVS and  
subversion are top champions in this. This is why they are proud on the  
term "version control system", as opposed to "source code control  
system". SourceSafe can do it, but I never had much use for it.  
Actually, if you allow your source code to diverge, I don't understand  
why you would use a version control system at all.
- Keeping code shared among projects. I have never been able to do this  
in CVS, because I was not an administrator. This says it all. In  
Subversion, this is greatly improved. But not yet perfect. The main  
problem is that you can never share a file - you can only share  
directories. This in turn means that your project directories are  
influenced by the version control system, which may or may not be  
acceptable for the programming environment you use. It took me about two  
days to figure out how to make it work in PHP. SourceSafe has absolutely  
no problem with this: you can easily share files and even break the link  
later on if you need to. But then, SourceSafe calls itself a "source  
code control system".
- Work with a reliable (stable) system for your code. It is off course a  
bloody obvious demand, but only subversion is quite stable (which is  
quite funny, as the releases were not marked as stable releases).  
SourceSafe is a system to have a love/hate relation with. It has a few  
really good features (especially the sharing), but you really hate it  
when you have to hack the registry for working on a novell network, or  
when it messes up your code completely. This can be usually be repaired,  
but not without a good deal of trouble and frustration. I encountered  
too many problems with CVS as well, but I was glad I was not an  

Hope this is of any help.

Re: which version control system?

monomaniac21 wrote:

Quoted text here. Click to load it

Having used subversion and CVS, I prefer the former, but it's not really a
strong preference. I quite like the eSVN GUI for subversion. svnX is even
better. But I mostly use the command line svn tool.

Toby A Inkster BSc (Hons) ARCS
Contact Me ~ http://tobyinkster.co.uk/contact
Geek of ~ HTML/SQL/Perl/PHP/Python*/Apache/Linux

* = I'm getting there!

Site Timeline