6

I'm fairly new to programming and web dev and up until now I haven't worked on any projects that I felt were large enough to warrant using proper version control. However, I am now working on a project that is getting bigger and bigger (very exciting!). I think it would be prudent to use some kind of version control. At the moment I work alone, but if this project gets where I want it to then I expect at some point I am going to need (and want!) some other people to come on board. My problem is because I've never used version control, I don't really know what it is, how it works etc etc.

I hope this question isn't classed as subjective. I'm not asking for people to tell me which version control they think is best, I'm quite happy to spend some time looking around and trying them out for myself.

I'm really wanting some people to either give me a quick run down of how a standard version control system works (I know they'll all be different, but I'm talking basics here) and if possible, in a non-subjective way, to explain the differences between some of the major players. ie what is the difference between mercurial and git, not which is better - I'll decide that for myself thank you!

musoNic80
  • 3,678
  • 9
  • 40
  • 48
  • 2
    Here you go http://www.ericsink.com/scm/source_control.html - a good start explaining basics. – sharptooth Dec 16 '10 at 11:18
  • 4
    Small side note - regardless of project size, I'd always use version control. Everybody does something stupid at some point, and the ability to roll back and save your arse is invaluable. – Paddy Dec 16 '10 at 11:41

2 Answers2

2

Wikipedia answers: http://en.wikipedia.org/wiki/Revision_control

However you should note that reading about VCS's its quite useless until you do it yourself. I never understood this DVCS(Distributed Version Control System) concept until I started using it. I had some similar experience with trying to figure out the benefits of using SVN, Mercurial and Git, it all became clear when I started using its best practices.

Marcelo Lacerda
  • 847
  • 1
  • 15
  • 30
2

If you're working alone, can the distributed model work?

I use Subversion for my own work at home.

I think the Subversion red bean book is a great general read about how to use version control: branching, tagging, etc. It's worth reading a bit even if you don't choose Subversion.

duffymo
  • 305,152
  • 44
  • 369
  • 561
  • I prefer distributed SCM for solo projects. Setting up new git and hg repositories is even easier than in svn. This is a personal opinion, but since switching to git, I now consider svn's model of source control to be fundamentally broken. – haydenmuhl Dec 16 '10 at 20:34