1.0 KiB
1.0 KiB
title, tags
| title | tags |
|---|---|
| Automatically find the commit that introduced a bug | commit,branch,advanced |
Uses a binary search algorithm and a given script to find which commit in history introduced a bug.
- Use
git bisect startto start the process. - Use
git bisect good <commit>to mark a<commit>as "good", indicating it is known to be bug-free. - Use
git bisect bad <commit>to mark a different<commit>as "bad" indicating it has the bug. - Use
git bisect run <command>to run the given<command>on each subsequent commit to find which commit introduce the bug. - Use
git bisect resetto reset to the original branch. You can optionally specify a<commit>to reset to.
git bisect start
git bisect good <commit>
git bisect bad <commit>
git bisect run <command>
git bisect reset [<commit>]
git bisect start
git bisect good 3050fc0de
git bisect bad c191f90c7
git bisect run npm test # Run `npm test` for each commit
# ... some time later the bad commit will be printed
git bisect reset # Goes to the original branch