DEV Community

Jesse Phillips
Jesse Phillips

Posted on • Updated on


So you Programmed in a Regression

Did you have a feature which worked perfectly and now it is a piece of garbage, riddle in a hidden bug? OK that was harsh, the point is it would be nice to know what changes introduced the behavior difference.

Git bisect performs a binary search of your commit history. Start by finding a known working commit then use bisect to manage the code checkout to find the affending commit.

By following a communicative commit history, each commit should compile, and you'll be told what was requested at the time.

See these tools aren't the first thing to reach for, but they can be an effective way to track things down when it the issue isn't directly pointed to. The D community put together an additional tool to track down compile regression by supplying a command which identified the failure. Git bisect was executed to automatically go through compiler builds (from Commits) to get to the introducing commit.

Top comments (0)

Timeless DEV post...

Git Concepts I Wish I Knew Years Ago

The most used technology by developers is not Javascript.

It's not Python or HTML.

It hardly even gets mentioned in interviews or listed as a pre-requisite for jobs.

I'm talking about Git and version control of course.

One does not simply learn git