Experience with Git: From time to time, a test fails. One of the first things I typically do is run git bisect. All I need to do is to identify a good version, a bad version, and a test to run. Even if the test takes 2 minutes and there are 30 or so revisions between the good and bad points, I get an answer in about 10 minutes without needing to be further involved in determining where the problem is.
[Yeah there’s good stuff in all this.]
Source: Sam Ruby