Signed-off-by: Matthias Lederhofer <matled@xxxxxxx> --- Junio C Hamano <junkio@xxxxxxx> wrote: > I am not enthused about any configuration stored in .git/config > to override the environment variables. Files are to store > reasonable default, and command line flags and environments are > to override them, but this patch does it the other way around. You're right, this patch uses $GIT_PAGER. I don't think pager.program does make much sense with this (expect someone does not want to export $PAGER/$GIT_PAGER), should it be introduced anyway (I don't need it)? --- Documentation/git.txt | 3 +++ pager.c | 5 ++++- 2 files changed, 7 insertions(+), 1 deletions(-) diff --git a/Documentation/git.txt b/Documentation/git.txt index 7310a2b..d243883 100644 --- a/Documentation/git.txt +++ b/Documentation/git.txt @@ -627,6 +627,9 @@ git Diffs other ~~~~~ +'GIT_PAGER':: + This environment variable overrides `$PAGER`. + 'GIT_TRACE':: If this variable is set git will print `trace:` messages on stderr telling about alias expansion, built-in command diff --git a/pager.c b/pager.c index 280f57f..ab9be5d 100644 --- a/pager.c +++ b/pager.c @@ -15,10 +15,13 @@ void setup_pager(void) { pid_t pid; int fd[2]; - const char *pager = getenv("PAGER"); + char *pager; if (!isatty(1)) return; + pager = getenv("GIT_PAGER"); + if (!pager) + pager = getenv("PAGER"); if (!pager) pager = "less"; else if (!*pager || !strcmp(pager, "cat")) -- 1.4.2.rc2.g91b7 - : send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html