Revision control advice

Da Rock freebsd-questions at
Thu Dec 22 02:53:11 UTC 2011

On 12/22/11 11:37, Chris Hill wrote:
> Hello list,
> I apologize for this posting being not-much-on-topic, but my other 
> resources have come to naught and I think you folks may have some 
> experience in this area.
> I'm looking to set up some sort of revision control system at work. 
> Simple enough, except that our situation is approximately the reverse 
> of what most revision control systems are designed for.
> Unlike, e.g., FreeBSD kernel development, we have dozens or hundreds 
> of small, rapid-fire projects that are created at the rate of 3 to 20 
> per month. They last a few days or a few months and are (usually) not 
> developed afterward. Each project has one to three developers working 
> on it, sometimes simultaneously. Usually it's one guy per project.
> Since my programmers are not necessarily UNIX-savvy, I'd like to 
> deploy a web interface for them which will allow them to create new 
> repositories (projects) as well as the normal checkin, checkout, etc. 
> I want to set this up once, and from there on have the programmers 
> deal with managing their own repos. And heaven forfend exposing them 
> to the horrors of the shell.
> I've built a test server (9.0-RC3, amd64) for experimenting with this 
> stuff. So far I've installed and played with:
>  - fossil. I like the simplicity and light weight, but it doesn't seem 
> to allow creation of new repos at all (let alone multiple ones) from 
> the web interface, and the documentation is meager. I've pretty much 
> given up on it.
>  - subversion, which looks like the heavy hitter of RCSs, but it's not 
> at all clear to me how to handle the multiple-project scenario. Still 
> working on it.
>  - git looks promising, but I have not installed it yet.
> If anyone can point me to a tool that might be suitable, I would be 
> most grateful.
I'd suggest subversion. It allows individual files to be versioned, you 
can setup a webdav interface, and there are other tools that can help 
maintain it.

Forget the individual repositories. Setup a single repository and have 
directories for each project. in each directory you can then setup 
trunk, branches, whatever, as per best practices in the Book.

Designate a person or two to administer, and use directory level auth, 
or another alternative I haven't thought of.

My 2c's anyway. HTH

More information about the freebsd-questions mailing list