TortoiseSVN is a really easy to use Revision control / version control / source control software for Windows. It is based on Subversion. TortoiseSVN provides a nice and easy user interface for Subversion.
It is developed under the GPL. Which means it is completely free, including the source code. But just in case you don't know the GPL too well: you can use TortoiseSVN to develop commercial applications or just use it in your company without any restrictions.
Since it's not an integration for a specific IDE like Visual Studio, Eclipse or others, you can use it with whatever development tools you like.
As a Subversion client, TortoiseSVN has all the features of Subversion itself, including:
- Most current CVS features.
- Directories, renames, and file meta-data are versioned.
- Commits are truly atomic.
- Branching and tagging are cheap (constant time) operations.
- Efficient handling of binary files.
- BUG: The "go to next diff" in TortoiseMerge stopped at lines filtered with a regex.
- BUG: Changing the font in TortoiseMerge wasn't taking effect until a restart.
- BUG: When a filter was active in TMerge, filtered lines could still be handled as a diff.
- BUG: Changing the font in TMerge required a restart for the changes to take effect.
- BUG: On Win8 and later, the spell checker wasn't properly handled in case there's no appropriate dict available.
- BUG: Wording of the transfer speeds was wrong.
- BUG: The externals property dialog did not handle HEAD revisions properly.
- BUG: Autocompletion of filenames with umlauts in the commit dialog did not work.
- BUG: The LogFindCopyFrom feature did not work properly for a branch that wasn't created from HEAD.
- BUG: the conflict resolve buttons were not enabled in TortoiseMerge.
- BUG: TortoiseMerge could hang with "ignore comments" enabled.
- BUG: The patch window in TMerge could be shown outside of a multi-monitor setup, i.e. not in a visible area.
- BUG: When deleting multiple files with unversioned files mixed in, the "do this for all unversioned/modified files" still showed a lot of error messages for unversioned files.
- BUG: "Split lines" in the commit dialog with a log width marker set lead to memory exhaustion.
- BUG: The tsvn:mergelogtemplatemsgtitlebottom property didn't work.
- BUG: Creating an external via right-dragging if the name contained a space failed.
- BUG: certain urls were not recognized as resulting in paths that are not valid on Windows.