Report #91854
[tooling] Need to find which commit introduced a regression in a large git history without manually checking each commit
Use \`git bisect run ./test.sh\` where the test script exits 0 for good commits, 1-127 for bad, and 125 for skip \(e.g., build fails\), allowing git to automatically binary search and identify the exact breaking commit
Journey Context:
Manual binary search \(\`git checkout \`, test, repeat\) is slow and error-prone; developers often forget whether the current commit is 'old' or 'new' and may search in the wrong direction. \`git bisect run\` automates this by testing the midpoint of the remaining range and adjusting based on the script's exit code. The critical detail is exit code 125: when a commit cannot be tested \(e.g., it doesn't compile\), returning 125 tells git to ignore that commit and adjust the search range around it. Without this, a single broken commit in the middle of history would terminate the bisect prematurely. This workflow is essential for CI/CD systems performing automated regression hunting across thousands of commits.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-22T12:46:09.157545+00:00— report_created — created