Source Control - Who uses it?

Answer

Well-known member
Joined
Jul 2, 2002
Messages
46
Location
USA
I am a single developer as a hobbie basically. But im embarking on a pretty complex and large project. I have 3 computers i develope on, home , work and laptop. I currently have a zip drive connected to each with some syncronization software installed, so i jsut pop the disk in, it auto copies the files to disk, blah blah blah. Its very slick, clean and easy.

I see though that a lot of projects use either CVS, subversion or perforce(i like this one). Besides the multiple developer issue, is source control something i should spend the time to learn and use given my situation? What do you guys think? Becuase im really torn on what to do!
 
There are two main reasons for Source Control software:

1. Multiple developers working on the same files (at different times). Its just too easy to lose work without source control in this case.

2. You want to track and easily view various versions or builds of an app. You may have to support different versions of your software. This is much easier to do with source control software.
 
Answer said:
I am a single developer as a hobbie basically. But im embarking on a pretty complex and large project. I have 3 computers i develope on, home , work and laptop. I currently have a zip drive connected to each with some syncronization software installed, so i jsut pop the disk in, it auto copies the files to disk, blah blah blah. Its very slick, clean and easy.

I see though that a lot of projects use either CVS, subversion or perforce(i like this one). Besides the multiple developer issue, is source control something i should spend the time to learn and use given my situation? What do you guys think? Becuase im really torn on what to do!
Definitely a good skill to have on your tool belt!!!
Can be the difference between landing the job and not.
 
Even if you never plan on working in a team, Id use some kind of source control system. I use one at work and at home, even on test projects. I cant count the number of times Id be writing a test project, change a bunch of test code (just prototypes mostly) and wish I could get back to where I was an hour ago, two hours ago or a day ago. Often my test projects morph around, sometimes testing APIs, sometimes testing Math functions, etc.

If you use Visual Studio, Id see if any of the programs youre looking at integrate "easily" with it. For example, Visual SourceSafe (from MS) lets you right click a file and "check out", "check in", "compare versions" and more.

-Nerseus
 
Right now, im currently evaluating Perforce, they are a commercial product, but they offer a two client license for free and also open source licenses. Two client works great for a single developer like myself, and the best part about it, is that it integrates with vs.net and comes with a bunch of other ways of accessing the depot.

I still would like hear other peoples opinions on the matter....any negatives? Also, what software do you use?
 
Last edited by a moderator:
I personally tend to use CVS (its free for starters). Newer versions integrate well with windows (www.cvsnt.org) and are fairly easy to setup if you follow the instructions. Requiring only 1 port for access it also works through a firewall quite easily.
As for a client then www.tortoisecvs.org is a very nice windows shell extension (they also do a VS.Net plugin) that makes checking in/out, diffing, merging changes etc only a few mouse clicks.
 
Dont forget SourceGear Vault either. A single-user license is free of charge. Plus the system is programmed in .NET and uses Microsoft SQL Server as a data store. Works over firewalls as well, since its Web services-based.
 
And I prefer WinCVS.
I have repositories on linux box where I can connect over SSH.
I like CVS because Im programming on different platforms and different languages, including .NET
 
you need a source control when many guys work at the same time in the same solution, I dont use it when I work at home
BTW I use Visual Source Safe at work
 
just the rollback feature alone is worth the price of admission - we use VSS 6.0c

fyi...
(I saw an update on MS site for VSS to 6.0d
Also, if you use Visual Studio 6 the final and latest Service Pack has been released)
 
@Malfunction: I read some of that review - he talks a LOT about bugs, but doesnt mention a single one that he saw. He claims VSS cant have multiple developers check-out a file at the same time and that is simply not true.

My shop currently uses VSS and Ive used it for probably 6 or 7 years without EVER having a problem - no sudden crashes, no corrupt databases, nothing. I wont argue that Ive heard others say theyve had problems, but Ive never come across a problem.

As for multiple check-outs, VSS does them pretty well. It provides a very nice merge function (visual of course) which works about 90% of the time. Id say 100%, but for controls on WinForms. For some reason, if two developers have a file checked out and are tweaking controls (adding, removing, or renaming) the merge shows conflicts that must be resolved. For pretty much ALL other code, Ive never had a merge problem. The merge problem with controls can be easily spot-checked before check-in through the "Merge Conflict" window.

This is not to say VSS is not without problems. VSS, like most other source control systems from what Ive heard (dreaded rumors), doesnt work well when you rename or move a file in Visual Studio. Meaning, VSS wont really delete the old file on a rename, it just makes a copy. You have to remember to go delete the file from sourcesafe manually.

Its backup/restore process also takes a LONG time, even for relatively small databases.

The branching/merging feature is nice but doesnt work well if you want to be able to do a "temporary" branch and merge later. The new version of VSS is supposed to help with this, but I havent tried it.

Also, hes right that you can only "see" files are available on your network. It doesnt use a protocol, such as http, to see files on the internet. Ive personally never had a problem with this. It could very well be an issue if you have developers that are far away and you dont provide a VPN connection. Id think youd at least want to setup an HTTPS server (secure web server) if you wanted to expose your companys files over the internet and that seems harder than a VPN, but thats just my simplified view.

As a note about that review Malfunction pointed to - he claims to have reviewed VSS 7.0. At the time of his review (Jan 04) that was likely in an alpha or early beta stage - if it was released at all. He mentions the version numerous times so I dont think it was a typo. The new version of sourcesafe isnt even called SourceSafe - its TeamShare (I think). I would guess he reviewed version 6x from his comments but if so, he hasnt used it THAT extensively. As I mentioned, he claims certain things that are just wrong.

Darn, my "review" was almost as big as his :)

-ner
 
Back
Top