Version control software (VCS) can be grouped into two categories, client-server and distributed. You can find a list of open source and proprietry VCS here.
A distributed VCS generally stores a complete copy of the repository on every client machine. While this does have advantages, for large repositories that are common with animation projects this can be a big drawback. While you may have 10GB of data files, you get 100's of GB or even TB of history data, when you start a new machine working on the project, that entire history needs to be copied to the client, this can take a long time and use a lot of extra storage. To avoid this, git, for example, allows you to store only parts of the history. However, with git you need to maintain the local history manually from time to time.
In contrast, a client-server VCS only needs the full history on the server with each client holding two copies of the current version, one is a clean copy that can be compared to the working file to decide what changes need to be committed back to the server. So when you have 10GB of project files, you only need to copy 10GB of data across to a new client machine, which can then be duplicated locally into working files, you can also checkout only a portion of a project to reduce this if you don't need all of the project files for the task.
When it comes to open source, there are several distributed VCS options but subversion is the only choice for client-server VCS. There are several clients available for subversion, most of which are listed here, while many are web based for viewing the repository or developer tool integrations, there are several standalone GUI's as well as desktop integration options that add svn commands to your existing file browser.