For personal use. Anyone can recommend the version control system for Windows
-
For a difference between DVCS (Distributed) and CVCS (Centralized): http://stackoverflow.com/questions/2563836/sell-me-distributed-revision-control/2563917#2563917 and http://stackoverflow.com/questions/2704996/describe-your-workflow-of-using-version-control-vcs-or-dvcs: that way, when you choose amongst the answers below, you at least have an idea of the differences between the two kinds of VCS. – VonC Dec 14 '10 at 04:55
7 Answers
Git. You won't regret it.

- 12,879
- 1
- 32
- 39
-
2I just downloaded Git and I find Git GUI very hard to use and awkward. I must be the only one because everyone raves about it. – sarsnake May 26 '11 at 22:36
-
1Sarsnake, try Mercurial. It's like Git, but less "nuts and bolts" and more tailored for the 90% use case. – Vimes Dec 02 '12 at 05:16
Or CollabNet Subversion. It's easy to set up and run as a Windows service.

- 305,152
- 44
- 369
- 561
Subversion has an excellent client, Tortoise, available on Windows. Git has a version of Tortoise as well, however, it's not as reliable.

- 599
- 3
- 9
Use a distributed version control system. There are many out there the most popular ones being git and mercurial. Distributed SCM is really the way to go because they tend to have much better branch merging and branch management algorithms. Also, by their very nature they are stand-alone programs processing your filesystem. So you don't need to install or manage a server which is another plus for a personal version control system.
Like Tyler, I would personally encourage you to learn git (because all the cool boys use it :-) but I know it is not for everybody. If you like GUI Plastic SCM looks very good. It's commercial but free for teams of less than 5 people. Fossil is another one that's easy to use (I would say easier than git to learn) but it uses an SQLite file to store your code and I'm not sure if it scales to really big projects. On the other hand SQLite itself is a fairly big project that uses Fossil (both written by the same author for the same reason: he couldn't find anything else out there that he liked).

- 109,858
- 19
- 140
- 171
There are alot of Personal Version Control systems out there. Basically they automatically save every change and usually store locally with an option to save somewhere else as well. Here is a short list
Note: I am the author of FolderTrack. I recomend it for source control because it perserves the relationship between multiple source files. Therefore if you need to take your source code back to yesterday then FolderTrack will do all the renames, changes, ... to do it.

- 3,217
- 5
- 30
- 42
I post the below because I LOVE using TFS and I develop mostly inside the Microsoft ecosystem. I also like to run my personal projects like 'real' projects with releases, builds, and gated check-ins.
If you have an MSDN account, I personally like TFS 2010 in workstation mode (no Sharepoint, SSAS, SSRS). The setup takes about 5 minutes and is MUCH, MUCH more simple than it was in the past.
It is safe and easy to run this ON your workstation (your workstation AS the server), although I now run it on a Windows Home Server. All TFS is is IIS in front of SQL Express with a few scheduled tasks.
- You get the ability to track your own bugs/tasks/etc.
- You get awesome branching and merging support (release management).
- You get the ability to do your own server-based builds, with code coverage and unit tests
- You get shell extensions (TFS Power Tools)
- If you use TFS at work, you will already know how to use it.
I know this won't be popular, but if you try it out, it really does work great.

- 4,344
- 3
- 32
- 39
If you are going to be working on a project just by yourself, and more importantly, committing regularly and can afford maintaining multiple branches(only if you need to), Go for subversion. Otherwise, choose Git, because,
- it allows you to stash changes without committing to your repository
- The entire version history is maintained locally, so this makes it quicker to view changes for others who are going to access your code
- In Git you dont need to maintain separate project(source) directories for each of your code branches.

- 15,589
- 9
- 43
- 57