Yes you can, I have been working on some tips for how to use git bisect to actually track down an exact situation like this. Its not yet complete but ill paste what I have so far: git bisect start [bad_commit] [good_commit] -- [path1] [path2] ... or git bisect start [bad_commit] [HEAD~10] - within the last 10 it broke then compile / test etc/ the tell git: git bisect bad or git bisect good then it will move on to the next git bisect reset when done git bisect skip if you cant test a specific revision Auto have it test each one if you have a script: git bisect run [my_script] [arguments] Note that the script (my_script in the above example) should exit with code 0 if the current source code is good, and exit with a code between 1 and 127 (inclusive), except 125, if the current source code is bad. So for you, you would want to do: git bisect start HEAD HEAD~100 lets say if you knew 100 commits ago was fine. Then try compiling and use git bisect bad if it works or git bisect good if it doesn't. This will track down where it stopped working for you so not only you know but we will have an easy time fixing it (probably) once you can tell us the exact commit. If you want to go back to a specific commit you can use git log to see the commits too rather than just jumping back a fixed number. ~Mitch