Git is a powerful tool. Once you’ve mastered commit
and merge
, there are endless possibilities. A very useful one is [git-bisect](https://git-scm.com/docs/git-bisect)
. It helps you find a commit that introduced a certain change in behavior.
We use git-bisect
a lot in the Node.js project. The Node.js project has good continuous integration but some bugs are only discovered after a release. With git-bisect
, it’s easy to find the bad commit.
If you want to try out git-bisect
, here is a demo repository. At some point, a bug was introduced as you can see by running npx mocha test1.js
. Can you find the bad commit?
Use this repository to practice git bisect.
Instead of testing each step manually, you can run git-bisect
with a script. It will use the script at each step and automatically mark the commit, until it finds the first bad commit.