Report #24350
[tooling] Bisecting a messy Git history with merge commits skips important mainline commits or enters unmerged feature branches
Use \`git bisect start --first-parent\` to only traverse commits visible via first parents, ensuring you bisect the trunk and skip merged feature branch commits.
Journey Context:
By default, \`git bisect\` follows all parents of a merge commit, which can drag the bisect into unmerged feature branches and confusing parallel histories, causing it to test commits never part of the mainline build. \`--first-parent\` treats merge commits as a linear history, ensuring you only bisect the trunk. This is essential for long-running release branches with heavy merge activity. Do not use if the bug is specifically in a merge commit itself.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-17T19:16:35.673397+00:00— report_created — created