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

[PATCH v8 6/7] bisect: add documentation for --no-checkout and --update-ref=<ref> options.

From
Jon Seymour <jon.seymour@gmail.com>
Date
Jul 31, 2011, 11:55 UTC
Message-ID
<1312113321-28760-7-git-send-email-jon.seymour@gmail.com>
In-Reply-To
<1312113321-28760-1-git-send-email-jon.seymour@gmail.com>
Signed-off-by: Jon Seymour <jon.seymour@gmail.com>
---
 Documentation/git-bisect.txt |   34 +++++++++++++++++++++++++++++++++-
 1 files changed, 33 insertions(+), 1 deletions(-)
diff --git a/Documentation/git-bisect.txt b/Documentation/git-bisect.txt
index ab60a18..25a25b3 100644
--- a/Documentation/git-bisect.txt
+++ b/Documentation/git-bisect.txt
@@ -17,7 +17,7 @@ The command takes various subcommands, and different options depending
 on the subcommand:
 
  git bisect help
- git bisect start [<bad> [<good>...]] [--] [<paths>...]
+ git bisect start [--no-checkout|--update-ref=<ref>] [<bad> [<good>...]] [--] [<paths>...]
  git bisect bad [<rev>]
  git bisect good [<rev>...]
  git bisect skip [(<rev>|<range>)...]
@@ -263,6 +263,21 @@ rewind the tree to the pristine state.  Finally the script should exit
 with the status of the real test to let the "git bisect run" command loop
 determine the eventual outcome of the bisect session.
 
+OPTIONS
+-------
+--no-checkout::
++
+This option is a synonym for --update-ref=HEAD.
+
+--update-ref=<ref>::
++
+This option is used to specify that 'git bisect' should not modify the working
+tree or index on each iteration of the bisection process but should
+update the reference specified by <ref> instead.
++
+This option is useful in circumstances in which checkout is either not
+possible (because of a damaged respository) or is otherwise not required.
+
 EXAMPLES
 --------
 
@@ -343,6 +358,23 @@ $ git bisect run sh -c "make || exit 125; ~/check_test_case.sh"
 This shows that you can do without a run script if you write the test
 on a single line.
 
+* Locate a good region of the object graph in a damaged repository
++
+------------
+$ git bisect start HEAD <known-good-commit> [ <missing-or-damaged-commit> ... ] --no-checkout
+$ git bisect run eval '
+rc=1;
+if git rev-list --objects HEAD >tmp.$$; then
+   git pack-objects --stdout >/dev/null < tmp.$$ && rc=0;
+fi;
+rm tmp.$$;
+test $rc -eq 0;'
+
+------------
++
+In this case, when 'git bisect run' finishes, bisect/bad will refer to a commit that
+has at least one parent which is fully reachable in the sense of 'git pack-objects'.
+
 SEE ALSO
 --------
 link:git-bisect-lk2009.html[Fighting regressions with git bisect],
-- 
1.7.6.391.g168d0.dirty
Previous: Jon SeymourNext: Jon Seymour
Message 15 of 17 in “bisect: Add support for --no-checkout and --update-ref=<ref> options.”
  1. 0/7 bisect: Add support for --no-checkout and --update-ref=<ref> options.Jon Seymour, Jul 31, 2011
  2. 1/7 bisect: move argument parsing before state modification.Jon Seymour, Jul 31, 2011
  3. 2/7 bisect: add tests to document expected behaviour in presence of broken trees.Jon Seymour, Jul 31, 2011
  4. 3/7 bisect: introduce support for --update-ref=<ref> option.Jon Seymour, Jul 31, 2011
  5. 4/7 bisect: introduce --no-checkout, --update-ref=<ref> support into porcelain.Jon Seymour, Jul 31, 2011
  6. Christian CouderJul 31, 2011
  7. Jon SeymourJul 31, 2011
  8. Christian CouderJul 31, 2011
  9. Christian CouderJul 31, 2011
  10. Jon SeymourJul 31, 2011
  11. Christian CouderJul 31, 2011
  12. Christian CouderJul 31, 2011
  13. Jon SeymourJul 31, 2011
  14. 5/7 bisect: add tests for the --no-checkout and --update-ref options.Jon Seymour, Jul 31, 2011
  15. 6/7 bisect: add documentation for --no-checkout and --update-ref=<ref> options.Jon Seymour, Jul 31, 2011
  16. 7/7 bisect: support --update-ref <ref>Jon Seymour, Jul 31, 2011
  17. Jon SeymourJul 31, 2011

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.