Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Version Control by Example Paperback – July 25, 2011
The Amazon Book Review
Author interviews, book reviews, editors picks, and more. Read it now
Customers who viewed this item also viewed
Customers who bought this item also bought
Version Control by Example may as well be called The Hitchhiker's Guide to Distributed Version Control -- it's a concise and informative compendium that serves as both an introduction and a manual for practical usage of Mercurial, Git, Veracity, and virtually any other version control system. --Alex Papadimoulis, The Daily WTF
Eric covers multiple tools in lighthearted style that makes a potentially dry subject both amusing and understandable. If version control is a new tool in your programmers belt, this book is a great place to start. --Ben Collins-Sussman, Apache Subversion Developer
Version control is a critical tool in the developer's tool chain. So it's disappointing to consider just how few developers actually understand their version control system beyond the minimal incantations required merely to survive a day of coding at the office. Thanks to Eric Sink's new book on the topic, this need be the case no longer. Version Control by Example is organized well, light in tone, yet saturated with practical illustrations of not only how to choose among and use today's most popular free version control tools, but how to do so with efficiency, understanding, and purpose. --C. Michael Pilato, Apache Subversion Developer
Apache Subversion's rise to popularity opened the floodgates for others to explore new features and designs in version control, the most popular being Distributed Version Control Systems (DVCS). In a balanced way, this book covers the most popular tools today and whether you should choose a DVCS for your development. --Greg Stein, Apache Subversion Developer
About the Author
Eric Sink, founder of SourceGear, has been developing version control tools for over a decade. He is a popular conference speaker and blogger.
Eric is also the author of Eric Sink on the Business of Software (Apress, 2006).
Top customer reviews
Having worked on teams that had branches going every which way and others that prohibited branching entirely, because "it's too hard to get it right", I had hoped for some discussion of effective ways other people use it, but none (or very minimal) was to be had.
It isn't a reference book to any VCS, and it doesn't go into much detail about effective version control policy. Worth it for people coming to version control for the first time; less so for those looking to expand their understanding and use of it.
- Chapter 2: Basics (Centralized Version Control)
- [Possibly] Chapter 4: More Basics (Distributed Version Control)
- Plus the chapter for your particular version control system
Some argue that it isn't enough. Sure, if you want to go beyond the the basic developer workflow, then this book isn't enough. Get a book specific to your VCS. But I think this book is intended for the other 99.44% for which it is excellent.
(To the author) Eric. Great job! I'm looking fwd to seeing what Veracity has to offer, and how you might be able to change+enhance the Version Control system for BLOB (and of course Text, but BLOB especially) storage.
Each version control system discussed -- Subversion, Mercurial (hg), Git, and Veracity -- is presented in the same style: a narrative of fictional software developers using each system in their day-to-day work. The prose that accompanies each example is concise and unobtrusive. Each section covers the same basic tasks, like committing, pushing, pulling, merging, and so on. This means you can jump to learning about whichever VC system you like without missing out on important information covered in an earlier section.
If you do decide to read about all four systems, the author changes the wording enough that it doesn't feel like falling into a repetitive rut. I thought that was a nice touch. My comparison of this book with the Rosetta Stone in this review's title stems from the fact that each section covers basically the same thing; if you know how to use one VC system, it's relatively easy to get going with another one. Though, the author doesn't pretend that each version control system is the same. He explains where they differ, in particular the difference between "traditional" version control systems like Subversion, and newer distributed systems like the other three VC systems he discusses.
I would recommend this book to anyone new to version control, or anyone who is already familiar with one of the VC systems presented, but needs a quick, practical introduction to another one.
This book is written in a very nice, easy reading, conversational style. There's a lot of odd quips in the stories, which is very refreshing. Most books of this type range from dry to arid. That said, this isn't exactly a how-to. In fact, I'd really describe this as a primer on Distributed Version Control. Yes, he describes the standard centralized model, but only to provide a comparison point for why distributed is better. Surprisingly enough, the whole thing isn't a commercial. Yes, he is the founder of a software company which sells a centralized version control application, and they also give away a distributed version control example. Vault, their centralized app, is barely mentioned. Veracity, their new open-source distributed version control app, is covered in great detail, but so are git, mercurial, and other DVCS.
If you're in a software development team, and you're not using version control, I'd say this is a must read. If you're in a position where you are looking at a version control system to use, this is probably also a must read. If you're interested in version control systems, it's also worth a look. Don't worry if you're not a developer or system administrator. This is written for lay people.