(no title)
Locke1689 | 9 years ago
Before we moved to Git, Roslyn was on TFS, which was basically Perforce/CVS/SVN.
You're absolutely right that the distinction among the former VCS's is minimal. However, Git offers value that was transformative compared to the former. Namely,
1. Git allows you to easily switch between multiple work items while keeping track of the work done in each item.
2. Git allows you to easily integrate with people who have significantly diverged clones of your tree without too much trouble.
3. Git allows you to easily work offline.
(1) is definitely the largest benefit, but was mitigated with tools like g5 when I was at Google. However, the Google gravity well has its own drawbacks.(2) is very important if you want to host rapid release schedules with divergence of features. It's especially useful if you want to have long stabilization periods and low-risk bug fixes delivered in parallel to multiple customers.
(3) is pretty self-explanatory, but for most people it's underestimated how much downtime your VCS has. I'd bet, for most people, it's significantly less than 5 9's. Not only is that wasted time, it's frustrating because it's usually consecutive and removes entire working days at random.
saurik|9 years ago
lomnakkus|9 years ago