Subject: [PATCH 00/26] Git bisect part3

From: "Tanushree Tumane via GitGitGadget" <[email-masked]>
Date: Sun, 24 Feb 2019 02:11:15 -0800 (PST)

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