Book review: Version Control by Example (Eric Sink)


Since the project that I’m involved in is moving from Subversion to GIT, I was looking for a nice book to get me started. A tip on Hacker News pointed me to this book, these guys are even nice enough to send you a free copy (no strings attached).

The book starts out with a thorough description of current second generation Version Control Systems (VCS). By this, they mean that the repository is centralized on a server somewhere (CVS, SVN). A list of generic commands is then formulated and it’s filled in for SVN (things like checkout, commit, revert etc). After this, one chapter is spent on detailing an example workflow with 2 persons in SVN. The examples are complete and easy to follow.

The second part of the book starts with general information about Distributed VCS solutions, including the pros and cons of such a solution. After these general chapters, systems like Mercurial, GIT and Veracity (the VCS made by the guys who wrote this book) are each detailed in their own chapter. For each VCS, a workflow example that matches the SVN example is given so you can easily compare between the different systems. For each system the generalized table of commands is filled in with the proper equivalent for each tool.

I found this book contained a nice introduction to GIT (even though I might need some more advanced tutorials to really get it) and by re-using the example workflow, the comparison to SVN was easy. The writing style is clear and informal. The jokes are a bit lame but they lighten up what would probably otherwise be a very dry book! I’d definitely recommend it to people who need to get started with SVN or newer systems like GIT.