[PATCH v2] bisect: disable pager while invoking show-branch
- From
- Oded S via GitGitGadget <gitgitgadget@gmail.com>
- Date
- Jul 27, 2021, 08:12 UTC
- Message-ID
- <pull.1003.v2.git.1627373560881.gitgitgadget@gmail.com>
- In-Reply-To
- <pull.1003.git.1627311659384.gitgitgadget@gmail.com>
From: Oded Shimon <oded@istraresearch.com>
git-bisect uses show-branch for logging during the bisect process. If the user sets an interactive pager for show-branch, this makes bisect hang (wait for user input) unexpectedly - so we disable pager with -P.
It's possible that the user would set a pager for git-checkout as well, but an interactive pager there would break many more scripts.
Signed-off-by: Oded Shimon <oded@istraresearch.com>
---
Fix git-bisect when show-branch is configured to run with pager
Signed-off-by: Oded Shimon oded@istraresearch.comPublished-As: https://github.com/gitgitgadget/git/releases/tag/pr-1003%2Foded-ist%2Fmaster-v2 Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-1003/oded-ist/master-v2 Pull-Request: https://github.com/gitgitgadget/git/pull/1003
Range-diff vs v1:
1: 52eff18191b ! 1: c193f3a556f Fix git-bisect when show-branch is configured to run with pager
@@ Metadata
Author: Oded Shimon <oded@istraresearch.com>
## Commit message ##
- Fix git-bisect when show-branch is configured to run with pager
+ bisect: disable pager while invoking show-branch
+
+ git-bisect uses show-branch for logging during the bisect process. If the user
+ sets an interactive pager for show-branch, this makes bisect hang (wait for
+ user input) unexpectedly - so we disable pager with -P.
+
+ It's possible that the user would set a pager for git-checkout as well, but an
+ interactive pager there would break many more scripts.
Signed-off-by: Oded Shimon <oded@istraresearch.com>
bisect.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/bisect.c b/bisect.c index af2863d044b..c02bcc3359f 100644 --- a/bisect.c +++ b/bisect.c @@ -23,7 +23,7 @@ static struct oid_array skipped_revs; static struct object_id *current_bad_oid; static const char *argv_checkout[] = {"checkout", "-q", NULL, "--", NULL}; -static const char *argv_show_branch[] = {"show-branch", NULL, NULL}; +static const char *argv_show_branch[] = {"-P", "show-branch", NULL, NULL}; static const char *term_bad; static const char *term_good; @@ -748,7 +748,7 @@ static enum bisect_error bisect_checkout(const struct object_id *bisect_rev, int return -abs(res); } - argv_show_branch[1] = bisect_rev_hex; + argv_show_branch[2] = bisect_rev_hex; res = run_command_v_opt(argv_show_branch, RUN_GIT_CMD); /* * Errors in `run_command()` itself, signaled by res < 0, base-commit: eb27b338a3e71c7c4079fbac8aeae3f8fbb5c687
-- gitgitgadget