Skip to content
Find the first broken commit without having to learn git bisect
Find file
Latest commit 1de1068 @grosser v0.4.0
Failed to load latest commit information.
bin libify and add proper version bumping
lib/git v0.4.0
spec fix build
.travis.yml fix build
Gemfile update lock
Gemfile.lock v0.4.0
Rakefile add bump advertise standalone binary
git-autobisect.gemspec update gemspec

Find the first broken commit without having to learn git bisect.

  • automagically bundles if necessary
  • stops at first bad commit
  • takes binary steps (HEAD~1, HEAD~2, HEAD~4, HEAD~8)


gem install git-autobisect

or as standalone binary (needs any ruby)

curl > git-autobisect && chmod +x git-autobisect


cd your project
# run a test that has a non-0 exit status
git-autobisect 'rspec spec/models/user_spec.rb'
... grab a coffee ...
---> The first bad commit is a4328fa
git show


-m, --max N                    Inspect commits between HEAD..HEAD~<max>
-s, --start N                  Use N (instead of 1) as initial step and keep multiplying by 2
--step N                       Use N as step (instead of multiplying by 2
--no-bundle                    Do not bundle even if a Gemfile exists


  • do not fail if test file is missing [ ! -f spec/my_spec.rb ] || rspec spec/my_spec.rb


  • option for max-step-size so you can use a finer grained approach
  • option to disable bundle check || bundle injection
  • option to consider a build failed if it finishes faster then x seconds


  • bundle && bundle exec rake
  • Tests run a lot faster without bundle exec


Michael Grosser
License: MIT
Build Status

Something went wrong with that request. Please try again.