diff options
author | Jeff King <peff@peff.net> | 2012-06-07 23:03:23 +0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2012-06-08 08:31:52 -0700 |
commit | fe77b416c774a469a585c4b58fcae5e7a5f3545d (patch) | |
tree | 061ebc63f37f82f7852733fc311333dc7c2c789f | |
parent | 04ab6ae7765700375e9442347430fc3a6de40f81 (diff) | |
download | git-fe77b416c774a469a585c4b58fcae5e7a5f3545d.tar.gz git-fe77b416c774a469a585c4b58fcae5e7a5f3545d.tar.xz |
docs: fix cross-directory linkgit references
Most of our documentation is in a single directory, so using
linkgit:git-config[1] just generates a relative link in the
same directory. However, this is not the case with the API
documentation in technical/*, which need to refer to
git-config from the parent directory.
We can fix this by passing a special prefix attribute when building
in a subdirectory, and respecting that prefix in our linkgit
definitions.
We only have to modify the html linkgit definition. For
manpages, we can ignore this for two reasons:
1. we do not generate actual links to the file in
manpages, but instead just give the name and section of
the linked manpage
2. we do not currently build manpages for subdirectories,
only html
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | Documentation/Makefile | 2 | ||||
-rw-r--r-- | Documentation/asciidoc.conf | 2 | ||||
-rw-r--r-- | Documentation/technical/api-config.txt | 2 | ||||
-rw-r--r-- | Documentation/technical/api-credentials.txt | 6 | ||||
-rw-r--r-- | Documentation/technical/api-merge.txt | 2 |
5 files changed, 8 insertions, 6 deletions
diff --git a/Documentation/Makefile b/Documentation/Makefile index 9ad6a6a30..d84d6f414 100644 --- a/Documentation/Makefile +++ b/Documentation/Makefile @@ -270,6 +270,7 @@ technical/api-index.txt: technical/api-index-skel.txt \ technical/api-index.sh $(patsubst %,%.txt,$(API_DOCS)) $(QUIET_GEN)cd technical && '$(SHELL_PATH_SQ)' ./api-index.sh +technical/%.html: ASCIIDOC_EXTRA += -a git-relative-html-prefix=../ $(patsubst %,%.html,$(API_DOCS) technical/api-index): %.html : %.txt $(QUIET_ASCIIDOC)$(ASCIIDOC) -b xhtml11 -f asciidoc.conf \ $(ASCIIDOC_EXTRA) -agit_version=$(GIT_VERSION) $*.txt @@ -323,6 +324,7 @@ $(patsubst %,%.html,$(ARTICLES)) : %.html : %.txt WEBDOC_DEST = /pub/software/scm/git/docs +howto/%.html: ASCIIDOC_EXTRA += -a git-relative-html-prefix=../ $(patsubst %.txt,%.html,$(wildcard howto/*.txt)): %.html : %.txt $(QUIET_ASCIIDOC)$(RM) $@+ $@ && \ sed -e '1,/^$$/d' $< | $(ASCIIDOC) $(ASCIIDOC_EXTRA) -b xhtml11 - >$@+ && \ diff --git a/Documentation/asciidoc.conf b/Documentation/asciidoc.conf index aea8627be..6d06271ff 100644 --- a/Documentation/asciidoc.conf +++ b/Documentation/asciidoc.conf @@ -91,5 +91,5 @@ endif::doctype-manpage[] ifdef::backend-xhtml11[] [linkgit-inlinemacro] -<a href="{target}.html">{target}{0?({0})}</a> +<a href="{git-relative-html-prefix}{target}.html">{target}{0?({0})}</a> endif::backend-xhtml11[] diff --git a/Documentation/technical/api-config.txt b/Documentation/technical/api-config.txt index bd4d8b8f4..edf8dfb99 100644 --- a/Documentation/technical/api-config.txt +++ b/Documentation/technical/api-config.txt @@ -2,7 +2,7 @@ config API ========== The config API gives callers a way to access git configuration files -(and files which have the same syntax). See linkgit:../git-config[1] for a +(and files which have the same syntax). See linkgit:git-config[1] for a discussion of the config file syntax. General Usage diff --git a/Documentation/technical/api-credentials.txt b/Documentation/technical/api-credentials.txt index 199307ca0..4ef1db39a 100644 --- a/Documentation/technical/api-credentials.txt +++ b/Documentation/technical/api-credentials.txt @@ -180,7 +180,7 @@ longer than a single git process; e.g., credentials may be stored in-memory for a few minutes, or indefinitely on disk). Each helper is specified by a single string in the configuration -variable `credential.helper` (and others, see linkgit:../git-config[1]). +variable `credential.helper` (and others, see linkgit:git-config[1]). The string is transformed by git into a command to be executed using these rules: @@ -293,6 +293,6 @@ helpers will just ignore the new requests). See also -------- -linkgit:../gitcredentials[7] +linkgit:gitcredentials[7] -linkgit:../git-config[5] (See configuration variables `credential.*`) +linkgit:git-config[5] (See configuration variables `credential.*`) diff --git a/Documentation/technical/api-merge.txt b/Documentation/technical/api-merge.txt index 25158b8dc..9dc1bed76 100644 --- a/Documentation/technical/api-merge.txt +++ b/Documentation/technical/api-merge.txt @@ -36,7 +36,7 @@ the operation of a low-level (single file) merge. Some options: ancestors in a recursive merge. If a helper program is specified by the `[merge "<driver>"] recursive` configuration, it will - be used (see linkgit:../gitattributes[5]). + be used (see linkgit:gitattributes[5]). `variant`:: Resolve local conflicts automatically in favor |