git bisect

git bisect - Use binary search to find the
commit that introduced a bug.

git bisect <subcommand> <options>

git bisect start [--term-{new,bad}=<term> --term-{old,good}=<term>]
	  [--no-checkout] [--first-parent] [<bad> [<good>...]] [--] [<paths>...]
git bisect (bad|new|<term-new>) [<rev>]
git bisect (good|old|<term-old>) [<rev>...]
git bisect terms [--term-good | --term-bad]
git bisect skip [(<rev>|<range>)...]
git bisect reset [<commit>]
git bisect (visualize|view)
git bisect replay <logfile>
git bisect log
git bisect run <cmd>...
git bisect help

Example, start use:

$ git bisect start
$ git bisect bad                 # Current version is bad
$ git bisect good v2.6.13-rc2    # v2.6.13-rc2 is known to be good

Bisect reset

After a bisect session, to clean up the bisection
state and return to the original HEAD, issue the
following command:

$ git bisect reset

By default, this will return your tree to the
commit that was checked out before git bisect
start.