When bisecting, we currently don't output anything before bisection starts in earnest, which can result in some confusion. For example, in the case illustrated in the first commit in this patch series, it's trivial to accidentally misspell a tag or branch and accidentally end up in an unintended state with no clear indication about what happened. This patch series makes it so that we give information about bisect state even before the bisect is ready to begin. We also store these changes in state to the bisect log. v2: - Move to improve bisect output overall, instead of just warning for the specific unintended pathspec case. v3: - Fix test indentation - Rename bs to state - Use `unsigned int' for nr_{good,bad} - Pass the bisect state struct as an argument into bisect_print_status - Zero-initialise bisect_state directly, don't use memset() - Fix multiline comment style in bisect.h - Use strbuf in bisect_log_printf - Change `git bisect log' use an output file in tests instead of piping Chris Down (2): bisect: output state before we are ready to compute bisection bisect: output bisect setup status in bisect log bisect.h | 9 +++++ builtin/bisect--helper.c | 69 ++++++++++++++++++++++++++++++------- t/t6030-bisect-porcelain.sh | 28 +++++++++++++++ 3 files changed, 93 insertions(+), 13 deletions(-) -- 2.36.0