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

[PATCH 00/26] Git bisect part3

From
Tanushree Tumane via GitGitGadget <gitgitgadget@gmail.com>
Date
Feb 24, 2019, 10:11 UTC
Message-ID
<pull.117.git.gitgitgadget@gmail.com>

Changes since pranit’s v15 patch series =======================================

bisect--helper: refer branch.buf before strbuf_release(...) ===========================================================

bisect--helper: change retval to res ====================================

bisect--helper: decide_next() helper function. ==============================================

bisect--helper: bisect_next and bisect_auto_next shell function in C ====================================================================

Divided this commit into nine commits =====================================

 1.  bisect.c: libify exit_if_skipped_commits to error_if_skipped...
 2.  bisect.c: libify bisect_checkout and its dependants
 3.  bisect.c: libify check_merge_bases and its dependents.
 4.  bisect.c: libify check_good_are_ancestors_of_bad and its dependents
 5.  bisect.c: libify handle_bad_merge_base and its dependants
 6.  bisect.c: libify bisect_next_all and its dependants
 7.  bisect--helper: bisect_next and bisect_auto_next shell function in C
 8.  bisect--helper: Finish bisect_start() conversion
 9.  bisect--helper: dequote arguments in bisect-start
     
     
 10. changed error to return error 
     
     
 11. Removed goto done; as it was present just before done: call
 12. Use xstrdup(argv[i]) instead of argv[i] to prevent memory leak
 13. Adjusted the indentation Style: removed a space left of the comma.
 14. Changed the find the next bisection state statement to ‘checkout the
     next bisection commit’
 15. Changed ‘sha1_to_hex’ to ‘oid_to_hex’ as modern code does not use this
     unsigned function
 16. Changed the return type from ‘void’ to ‘int’ as the function was
     returning a value
 17. Changed ‘const unsigned sha1’ to ‘struct object_id oid’
 18. Changed (res == 10) branch and the (res == 2) branch into separate
     functions bisect_successful(struct bisect_terms *terms) and 
     bisect_skipped_commits(struct bisect_terms *terms)respectively and just
     call them.
 19. Removed unnecessary comments
 20. Changed exit code to return type like exit(2) to return 2; and 
     exit(res) to return res;
 21. Changed handle_bad_merge_base(); to declare res =
     handle_skipped_merge_base(mb);
 22. Changed bisect_start to git bisect--helper --bisect-start 

bisect--helper: retire --bisect-clean-state subcommand ======================================================

bisect--helper: retire --next-all subcommand ============================================

bisect--helper: retire --check-expected-revs subcommand =======================================================

bisect--helper: retire --write-terms subcommand ===============================================

bisect--helper: retire --bisect-write subcommand ================================================

bisect--helper: retire --bisect-autostart subcommand ====================================================

bisect--helper: retire --bisect-auto-next subcommand ====================================================

bisect--helper: retire --check-and-set-terms subcommand =======================================================

bisect--helper: bisect_autostart shell function in C ====================================================

 * Use STDIN_FINENO instead of 0.
 * Fix typo THe to The
 * Use return 1 instead of exit(0). Sayingno` is same outcome as not having
   a tty to ask for yes or no.
 * Add missing is in N_("start the bisection if BISECT_START empty or
   missing"), BISECT_AUTOSTART),
 * use set_terms()
 * die(“...”) to return error(“...”)

bisect--helper: bisect_state & bisect_head shell function in C ==============================================================

 * move get_terms() to cmd_bisect__helper()
 * die(“...”) to return error(“...”)
 * use oid instead of sha1. convert dependant functions also.
 * check_expected_revs() returns void, remove if around it.
 * use set_terms()

bisect--helper: bisect_log shell function in C ==============================================

 * use STDOUT_FILENO instead of 1.
 * die(“...”) to return error(“...”)

bisect--helper: bisect_replay shell function in C =================================================

 * use “cannot read file '%s' for replaying” error message instead of “no
   such file with name '%s' exists”, as it would be misleading if the file
   exists but is empty. 
 * starts_with(word.buf, "#") would be more accurate and can also handle
   cases where user edited the file and accidently removed <space> between #
   bad….
 * bisect_terms() now accepts terms and option. 
 * use more informative error message : “Replay file contains rubbish
   ("%s")”
 * remove unnecessary goto finish
 * die(“...”) to return error(“...”)
 * use set_terms()

bisect--helper: remove the dequote in bisect_start() ====================================================

bisect--helper: bisect_skip shell function in C ===============================================

Pranit Bauva (23):
  bisect.c: libify `exit_if_skipped_commits` to `error_if_skipped...`
  bisect.c: libify `bisect_checkout` and its dependants
  bisect.c: libify `check_merge_bases` and its dependents.
  bisect.c: libify `check_good_are_ancestors_of_bad` and its dependents
  bisect.c: libify `handle_bad_merge_base` and its dependants
  bisect.c: libify `bisect_next_all` and its dependants
  bisect--helper: `bisect_next` and `bisect_auto_next` shell function in
    C
  bisect--helper: Finish `bisect_start()` conversion
  bisect--helper: dequote arguments in `bisect-start`
  bisect--helper: retire `--bisect-clean-state` subcommand
  bisect--helper: retire `--next-all` subcommand
  bisect--helper: `bisect_autostart` shell function in C
  bisect--helper: `bisect_state` & `bisect_head` shell function in C
  bisect--helper: retire `--check-expected-revs` subcommand
  bisect--helper: retire `--write-terms` subcommand
  bisect--helper: `bisect_log` shell function in C
  bisect--helper: `bisect_replay` shell function in C
  bisect--helper: retire `--bisect-write` subcommand
  bisect--helper: retire `--bisect-autostart` subcommand
  bisect--helper: retire `--bisect-auto-next` subcommand
  bisect--helper: remove the dequote in bisect_start()
  bisect--helper: `bisect_skip` shell function in C
  bisect--helper: retire `--check-and-set-terms` subcommand
Tanushree Tumane (3):
  bisect--helper: refer branch.buf before strbuf_release(...)
  bisect--helper: change `retval` to `res`
  bisect--helper: `decide_next()` helper function.
 bisect.c                 | 140 ++++++---
 builtin/bisect--helper.c | 654 ++++++++++++++++++++++++++++++++-------
 git-bisect.sh            | 196 +-----------
 3 files changed, 649 insertions(+), 341 deletions(-)
base-commit: 06f5608c14e6972748b84649d5b8ffd335bbd209
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-117%2Ftanushree27%2Fgit-bisect-part3-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-117/tanushree27/git-bisect-part3-v1
Pull-Request: https://github.com/gitgitgadget/git/pull/117
-- 
gitgitgadget
Next: Tanushree Tumane via GitGitGadget
Message 1 of 27 in “Git bisect part3”
  1. 00/26 Git bisect part3Tanushree Tumane via GitGitGadget, Feb 24, 2019
  2. 01/26 bisect--helper: refer branch.buf before strbuf_release(...)Tanushree Tumane via GitGitGadget, Feb 24, 2019
  3. 02/26 bisect--helper: change `retval` to `res`Tanushree Tumane via GitGitGadget, Feb 24, 2019
  4. 05/26 bisect.c: libify `bisect_checkout` and its dependantsPranit Bauva via GitGitGadget, Feb 24, 2019
  5. 04/26 bisect.c: libify `exit_if_skipped_commits` to `error_if_skipped...`Pranit Bauva via GitGitGadget, Feb 24, 2019
  6. 06/26 bisect.c: libify `check_merge_bases` and its dependents.Pranit Bauva via GitGitGadget, Feb 24, 2019
  7. 08/26 bisect.c: libify `handle_bad_merge_base` and its dependantsPranit Bauva via GitGitGadget, Feb 24, 2019
  8. 07/26 bisect.c: libify `check_good_are_ancestors_of_bad` and its dependentsPranit Bauva via GitGitGadget, Feb 24, 2019
  9. 09/26 bisect.c: libify `bisect_next_all` and its dependantsPranit Bauva via GitGitGadget, Feb 24, 2019
  10. 11/26 bisect--helper: Finish `bisect_start()` conversionPranit Bauva via GitGitGadget, Feb 24, 2019
  11. 12/26 bisect--helper: dequote arguments in `bisect-start`Pranit Bauva via GitGitGadget, Feb 24, 2019
  12. 10/26 bisect--helper: `bisect_next` and `bisect_auto_next` shell function in CPranit Bauva via GitGitGadget, Feb 24, 2019
  13. 03/26 bisect--helper: `decide_next()` helper function.Tanushree Tumane via GitGitGadget, Feb 24, 2019
  14. 23/26 bisect--helper: retire `--bisect-auto-next` subcommandPranit Bauva via GitGitGadget, Feb 24, 2019
  15. 21/26 bisect--helper: retire `--bisect-write` subcommandPranit Bauva via GitGitGadget, Feb 24, 2019
  16. 20/26 bisect--helper: `bisect_replay` shell function in CPranit Bauva via GitGitGadget, Feb 24, 2019
  17. 22/26 bisect--helper: retire `--bisect-autostart` subcommandPranit Bauva via GitGitGadget, Feb 24, 2019
  18. 19/26 bisect--helper: `bisect_log` shell function in CPranit Bauva via GitGitGadget, Feb 24, 2019
  19. 17/26 bisect--helper: retire `--check-expected-revs` subcommandPranit Bauva via GitGitGadget, Feb 24, 2019
  20. 18/26 bisect--helper: retire `--write-terms` subcommandPranit Bauva via GitGitGadget, Feb 24, 2019
  21. 16/26 bisect--helper: `bisect_state` & `bisect_head` shell function in CPranit Bauva via GitGitGadget, Feb 24, 2019
  22. 24/26 bisect--helper: remove the dequote in bisect_start()Pranit Bauva via GitGitGadget, Feb 24, 2019
  23. 25/26 bisect--helper: `bisect_skip` shell function in CPranit Bauva via GitGitGadget, Feb 24, 2019
  24. 15/26 bisect--helper: `bisect_autostart` shell function in CPranit Bauva via GitGitGadget, Feb 24, 2019
  25. 26/26 bisect--helper: retire `--check-and-set-terms` subcommandPranit Bauva via GitGitGadget, Feb 24, 2019
  26. 14/26 bisect--helper: retire `--next-all` subcommandPranit Bauva via GitGitGadget, Feb 24, 2019
  27. 13/26 bisect--helper: retire `--bisect-clean-state` subcommandPranit Bauva via GitGitGadget, Feb 24, 2019

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.