Understanding Git-Bisect, i.e. Use Binary Search to Find the Change that Introduced a Bug by@fhinkel

Understanding Git-Bisect, i.e. Use Binary Search to Find the Change that Introduced a Bug

Read on Terminal Reader
react to story with heart
react to story with light
react to story with boat
react to story with money
image
Franziska Hinkelmann HackerNoon profile picture

Franziska Hinkelmann

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.

Try it!

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?

image

Use this repository to practice git bisect.

Automating 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.

image

react to story with heart
react to story with light
react to story with boat
react to story with money

Related Stories

L O A D I N G
. . . comments & more!