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

Re* git diff/log --check exitcode and PAGER environment variable

From
Junio C Hamano <gitster@pobox.com>
Date
Aug 8, 2008, 10:15 UTC
Message-ID
<7v1w0zersg.fsf_-_@gitster.siamese.dyndns.org>
In-Reply-To
<7vfxpfet8a.fsf@gitster.siamese.dyndns.org>
As this is not limited to diff command at all, let's do this instead.

-- >8 -- Document use of pager means you will see exit code from the pager

Whenever we run pager (either a subcommand that implies use of pager by default, or by explicit request with "git -p cmd"), the main git process becomes the upstream of the pipe that feed the pager, and the exit code from the command as a whole comes from the pager. Long time users may have already got used to this without being documented, but it should be documented.

We may be swapping the process ordering in the future so that the exit code from the main git process is always exposed, and at that point this comment should be removed.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
 Documentation/git.txt |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/Documentation/git.txt b/Documentation/git.txt
index b1cb972..d6ca400 100644
--- a/Documentation/git.txt
+++ b/Documentation/git.txt
@@ -150,7 +150,9 @@ help ...`.
 
 -p::
 --paginate::
-	Pipe all output into 'less' (or if set, $PAGER).
+	Pipe all output into 'less' (or if set, $PAGER).  Note that this
+	implies that the exit code you see from the command will be that
+	of the pager, not git.
 
 --no-pager::
 	Do not pipe git output into a pager.
Previous: Peter Valdemar Mørch (Lists)Next: Peter Valdemar Mørch (Lists)
Message 4 of 18 in “git diff/log --check exitcode and PAGER environment variable”
  1. Peter Valdemar Mørch (Lists)Aug 8, 2008
  2. Junio C HamanoAug 8, 2008
  3. Peter Valdemar Mørch (Lists)Aug 8, 2008
  4. Re* git diff/log --check exitcode and PAGER environment variableJunio C Hamano, Aug 8, 2008
  5. Peter Valdemar Mørch (Lists)Aug 8, 2008
  6. Johannes SchindelinAug 8, 2008
  7. Junio C HamanoAug 8, 2008
  8. Teach git log --check to return an appropriate error codePeter Valdemar Mørch, Aug 9, 2008
  9. Johannes SchindelinAug 9, 2008
  10. Junio C HamanoAug 9, 2008
  11. Peter Valdemar Mørch (Lists)Aug 10, 2008
  12. Junio C HamanoAug 10, 2008
  13. Junio C HamanoAug 9, 2008
  14. PATCH v2 0/2 Trying patch againPeter Valdemar Mørch, Aug 11, 2008
  15. 1/2 Teach git log --check to return an appropriate exit codePeter Valdemar Mørch, Aug 11, 2008
  16. 2/2 Teach git log --exit-code to return an appropriate exit codePeter Valdemar Mørch, Aug 11, 2008
  17. Jeff KingAug 8, 2008
  18. Jeff KingAug 8, 2008

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.