Bisecting
Also see the git-bisect(1) manpage.
B (magit-bisect)
This transient prefix command binds the following suffix commands and displays them in a temporary buffer until a suffix is invoked.
When bisecting is not in progress, then the transient features the following suffix commands.
B B (magit-bisect-start)
Start a bisect session.
Bisecting a bug means to find the commit that introduced it. This command starts such a bisect session by asking for a known good commit and a known bad commit. If you’re bisecting a change that isn’t a regression, you can select alternate terms that are conceptually more fitting than "bad" and "good", but the infix arguments to do so are disabled by default.
B s (magit-bisect-run)
Bisect automatically by running commands after each step.
When bisecting in progress, then the transient instead features the following suffix commands.
B b (magit-bisect-bad)
Mark the current commit as bad. Use this after you have asserted that the commit does contain the bug in question.
B g (magit-bisect-good)
Mark the current commit as good. Use this after you have asserted that the commit does not contain the bug in question.
B m (magit-bisect-mark)
Mark the current commit with one of the bisect terms. This command provides an alternative to magit-bisect-bad and magit-bisect-good and is useful when using terms other than "bad" and "good". This suffix is disabled by default.
B k (magit-bisect-skip)
Skip the current commit. Use this if for some reason the current commit is not a good one to test. This command lets Git choose a different one.
B r (magit-bisect-reset)
After bisecting, cleanup bisection state and return to original HEAD.
By default the status buffer shows information about the ongoing bisect session.
User Option: magit-bisect-show-graph
This option controls whether a graph is displayed for the log of commits that still have to be bisected.