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

[PATCH v2] bisect: disable pager while invoking show-branch

From
OGOded 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.com
Published-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
Previous: Christian CouderNext: Junio C Hamano
Message 9 of 10 in “Fix git-bisect when show-branch is configured to run with pager”
  1. Fix git-bisect when show-branch is configured to run with pagerOded S via GitGitGadget, Jul 26, 2021
  2. Christian CouderJul 26, 2021
  3. Junio C HamanoJul 26, 2021
  4. Junio C HamanoJul 27, 2021
  5. Christian CouderJul 28, 2021
  6. Junio C HamanoJul 28, 2021
  7. Re* [PATCH] Fix git-bisect when show-branch is configured to run with pagerJunio C Hamano, Jul 28, 2021
  8. Christian CouderJul 29, 2021
  9. bisect: disable pager while invoking show-branchOded S via GitGitGadget, Jul 27, 2021
  10. Junio C HamanoJul 27, 2021

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.