summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJon Seymour <jon.seymour@gmail.com>2011-05-01 18:16:25 +1000
committerJunio C Hamano <gitster@pobox.com>2011-05-01 21:50:04 -0700
commitf2dd8c3799ddbd7df63a89a9043916f8545a70a3 (patch)
tree99ba7774cc8c60bef70f107c731ee02cbd0643ce
parentec014eac0e9e6f30cbbca616090fa2ecf74797e7 (diff)
downloadgit-f2dd8c3799ddbd7df63a89a9043916f8545a70a3.tar.gz
git: add --info-path and --man-path options
Similar to the way the --html-path option lets UI programs learn where git has its HTML documentation pages, expose the other two paths used to store the documentation pages of these two types. Signed-off-by: Jon Seymour <jon.seymour@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--Documentation/git.txt10
-rw-r--r--Makefile4
-rw-r--r--git.c8
3 files changed, 19 insertions, 3 deletions
diff --git a/Documentation/git.txt b/Documentation/git.txt
index 9d5949229a..7e9b521cd9 100644
--- a/Documentation/git.txt
+++ b/Documentation/git.txt
@@ -9,7 +9,7 @@ git - the stupid content tracker
SYNOPSIS
--------
[verse]
-'git' [--version] [--exec-path[=<path>]] [--html-path]
+'git' [--version] [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
[-p|--paginate|--no-pager] [--no-replace-objects]
[--bare] [--git-dir=<path>] [--work-tree=<path>]
[-c <name>=<value>]
@@ -290,6 +290,14 @@ help ...`.
Print the path to wherever your git HTML documentation is installed
and exit.
+--man-path::
+ Print the path to wherever your git man pages are installed
+ and exit.
+
+--info-path::
+ Print the path to wherever your git Info files are installed
+ and exit.
+
-p::
--paginate::
Pipe all output into 'less' (or if set, $PAGER) if standard
diff --git a/Makefile b/Makefile
index cbc3fce2d5..322c59b761 100644
--- a/Makefile
+++ b/Makefile
@@ -1676,7 +1676,9 @@ strip: $(PROGRAMS) git$X
git.o: common-cmds.h
git.s git.o: EXTRA_CPPFLAGS = -DGIT_VERSION='"$(GIT_VERSION)"' \
- '-DGIT_HTML_PATH="$(htmldir_SQ)"'
+ '-DGIT_HTML_PATH="$(htmldir_SQ)"' \
+ '-DGIT_MAN_PATH="$(mandir_SQ)"' \
+ '-DGIT_INFO_PATH="$(infodir_SQ)"'
git$X: git.o $(BUILTIN_OBJS) $(GITLIBS)
$(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ git.o \
diff --git a/git.c b/git.c
index ef598c3e70..60a9403771 100644
--- a/git.c
+++ b/git.c
@@ -6,7 +6,7 @@
#include "run-command.h"
const char git_usage_string[] =
- "git [--version] [--exec-path[=<path>]] [--html-path]\n"
+ "git [--version] [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]\n"
" [-p|--paginate|--no-pager] [--no-replace-objects]\n"
" [--bare] [--git-dir=<path>] [--work-tree=<path>]\n"
" [-c name=value] [--help]\n"
@@ -95,6 +95,12 @@ static int handle_options(const char ***argv, int *argc, int *envchanged)
} else if (!strcmp(cmd, "--html-path")) {
puts(system_path(GIT_HTML_PATH));
exit(0);
+ } else if (!strcmp(cmd, "--man-path")) {
+ puts(system_path(GIT_MAN_PATH));
+ exit(0);
+ } else if (!strcmp(cmd, "--info-path")) {
+ puts(system_path(GIT_INFO_PATH));
+ exit(0);
} else if (!strcmp(cmd, "-p") || !strcmp(cmd, "--paginate")) {
use_pager = 1;
} else if (!strcmp(cmd, "--no-pager")) {