Version Control Software

Roy Smith roy at panix.com
Thu Jun 13 07:08:37 EDT 2013


In article <2644d0de-9a81-41aa-b27a-cb4535964b58 at googlegroups.com>,
 cutems93 <ms2597 at cornell.edu> wrote:

> Thank you everyone for such helpful responses! Actually, I have one more 
> question. Does anybody have experience with closed source version control 
> software? If so, why did you buy it instead of downloading open source 
> software? Does closed source vcs have some benefits over open source in some 
> part? 

This really doesn't have anything to do with python.  Someplace like 
http://en.wikipedia.org/wiki/Comparison_of_version_control_systems would 
be a good starting point for further research.

If I were to buy a closed-source VCS today, I would look at Perforce 
(www.perforce.com).  I used it for several years.  For small teams, you 
can download and use it for free, so you can play with it without 
commitment.

Perforce tries to solve a somewhat larger problem than just version 
control.  They also do configuration management.  You can set up a 
config-spec which says, "Give me this bunch of files from branch A, that 
bunch of files from branch B, and some third bunch of files which have 
some specific tag.  And, while you're at it, remap the path names so the 
directory structure looks like I want it to".

This configuration management can be a powerful tool when working on a 
huge project.  We threw *everything* into our p4 repo, including the all 
the compilers, development toolchains, and pre-built binaries for all 
the third-party libraries we used.  We also used a single repo shared by 
all the development groups (many 100's of developers on three 
continents).  I would never want to do that in a system like git or hg; 
every developer would have to drag down 100's of GB of crap they didn't 
need.  With p4, we could build people config-specs so they got just the 
parts they needed.

It is also a bit of a steep learning curve to figure out.  Only a few 
people were trusted to do things like build config-specs and create 
shared branches.

As a company, Perforce is a dream to work with.  Their tech support was 
pretty awesome.  I would shoot off an email to support at perforce.com, and 
I don't think it ever took more than 5 or 10 minutes for me to get a 
response back from somebody.  And that somebody would inevitably be 
somebody who knew enough to solve my problem, not just some first-line 
support drone.

The costs aren't outrageous, either.  The pricing is a little 
complicated (initial license, annual renewal, various support options, 
of them on a sliding scale based on quantity).  I seem to remember it 
working out to about $100/developer/year for us, but we were buying in 
fairly large quantities.



More information about the Python-list mailing list