I am developing software, alone, in C# using Visual Studio Professional 2010. I have been advised to use Visual SVN for source control.
Can you recommend and good books/PDF’s/resources for somebody who has no prior knowledge of how to use source control and wants to learn.
Thankyou
Visual SVN is very probably a wrapper, i.e. a graphical client to subversion; you should more care about the basics so a graphical client is not that important; you could (and perhaps even should sometimes) use subversion on the command line (with the
svncommand).subversion has several good books about it, and the online documentation is a good book. There are also several books (e.g. at OReilly) about subversion.
However, you could reconsider your choice of using
svn, in particular the fact that it is a centralized version control system, and that history is not available locally (only on the server); this means that you cannot use anysvncommand on a developer’s laptop without connection to thesvnserver.My feeling is that if you are just starting using version control, a distributed version control like GIT (or perhaps mercurial) is probably much better. I would suggest you to reconsider your decision of going to
svn. (I won’t recommendsvnfor a new project, even if you are the sole developer).All the version control systems I mention are free software and have good documentation; and you’ll find good books about them.
Beware that various version control systems have slightly different terminology (for example “checkout” has not the same meaning in
svnthan ingit), and even slightly different concepts and goals. And some similar operations (like branching) are costly insvnbut easy ingitWikipedia has good pages on version control, comparisons of VC software, distributed version control, svn, Git.
I repeat that you should reconsider going to SVN for a new project. It makes sense when working on an existing project, but I won’t recommend it for a new one.
Don’t forget to backup your repository if you manage it itself. And you could buy (if working on proprietary software) or get freely (if working on free software) some version control hosting (e.g. myversioncontrol, gitorious and many others)