git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH] Documentation: More examples for git bisect

From
John Tapsell <johnflux@gmail.com>
Date
Mar 6, 2009, 09:37 UTC
Message-ID
<1236332255-15712-1-git-send-email-johnflux@gmail.com>

Including passing parameters to the programs, and running more complicated checks without requiring a seperate shell script.

Signed-off-by: John Tapsell <johnflux@gmail.com>
---
 Documentation/git-bisect.txt |   27 ++++++++++++++++++++++++++-
 1 files changed, 26 insertions(+), 1 deletions(-)
diff --git a/Documentation/git-bisect.txt b/Documentation/git-bisect.txt
index 147ea38..7b8cfdd 100644
--- a/Documentation/git-bisect.txt
+++ b/Documentation/git-bisect.txt
@@ -212,7 +212,7 @@ If you have a script that can tell if the current source code is good
 or bad, you can automatically bisect using:
 
 ------------
-$ git bisect run my_script
+$ git bisect run my_script arguments
 ------------
 
 Note that the "run" script (`my_script` in the above example) should
@@ -251,6 +251,22 @@ EXAMPLES
 $ git bisect start HEAD v1.2 --      # HEAD is bad, v1.2 is good
 $ git bisect run make                # "make" builds the app
 ------------
++
+This looks for the first revision that fails to build between HEAD and
+the tag 'v1.2'.  
+
+* Automatically bisect a test failure between origin and HEAD:
++
+------------
+$ git bisect start HEAD origin --    # HEAD is bad, origin is good
+$ git bisect run make test           # "make test" builds and tests
+------------
++
+This looks for the first revision that 'make test' fails for, assuming that
+you have such a Makefile rule, and that 'make test' also builds the source code.
+Note however that if the source fails to build, this will be treated as a bad
+commit.  This may not be what you intend, so the following examples instead
+treat build failures as commits to skip.
 
 * Automatically bisect a broken test suite:
 +
@@ -291,6 +307,15 @@ It's safer if both "test.sh" and "check_test_case.sh" scripts are
 outside the repo to prevent interactions between the bisect, make and
 test processes and the scripts.
 
+* Automatically bisect a broken test suite, simplified version:
++
+------------
+$ git bisect start HEAD HEAD~10 --   # culprit is among the last 10
+$ git bisect run sh -c "make || exit 125; ~/check_test_case.sh"
+------------
++
+Does the same as the previous example, but on a single line.
+
 Author
 ------
 Written by Linus Torvalds <torvalds@osdl.org>
-- 
1.6.2.97.g034f.dirty
Next: Christian Couder
Message 1 of 2 in “Documentation: More examples for git bisect”
  1. Documentation: More examples for git bisectJohn Tapsell, Mar 6, 2009
  2. Christian CouderMar 6, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.