docs: fix repository-layout when building with breaking changes

Since commit 8ccc75c245 (remote: announce removal of "branches/" and
"remotes/", 2025-01-22) enabling WITH_BREAKING_CHANGES when building git
removes support for reading branches from ".git/branches" and remotes
from ".git/remotes". However those locations are still documented in
gitrepository-layout.adoc even though the build does not support them.

Rectify this by adding a new document attribute "with-breaking-changes"
and use it to make the inclusion of those sections of the documentation
conditional. Note that the name of the attribute does not match the test
prerequisite WITHOUT_BREAKING_CHANGES added in c5bc9a7f94 (Makefile:
wire up build option for deprecated features, 2025-01-22). This is to
avoid the awkward double negative ifndef::without_breaking_changes for
documentation that should be included when WITH_BREAKING_CHANGES is
enabled. The test prerequisite will be renamed to match the
documentation attribute in a future patch series.

Signed-off-by: Phillip Wood <phillip.wood@dunelm.org.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Phillip Wood 2025-03-05 10:42:37 +00:00 committed by Junio C Hamano
parent 6a64ac7b01
commit 92f8da8de3
3 changed files with 12 additions and 0 deletions

View File

@ -224,6 +224,10 @@ asciidoc.conf: asciidoc.conf.in FORCE
$(QUIET_GEN)$(call version_gen,"$(shell pwd)/..",$<,$@) $(QUIET_GEN)$(call version_gen,"$(shell pwd)/..",$<,$@)
endif endif
ifdef WITH_BREAKING_CHANGES
ASCIIDOC_EXTRA += -awith-breaking-changes
endif
ASCIIDOC_DEPS += docinfo.html ASCIIDOC_DEPS += docinfo.html
SHELL_PATH ?= $(SHELL) SHELL_PATH ?= $(SHELL)

View File

@ -152,6 +152,7 @@ config.worktree::
working directory in multiple working directory setup (see working directory in multiple working directory setup (see
linkgit:git-worktree[1]). linkgit:git-worktree[1]).
ifndef::with-breaking-changes[]
branches:: branches::
A deprecated way to store shorthands to be used A deprecated way to store shorthands to be used
to specify a URL to 'git fetch', 'git pull' and 'git push'. to specify a URL to 'git fetch', 'git pull' and 'git push'.
@ -164,6 +165,7 @@ branches::
"$GIT_COMMON_DIR/branches" will be used instead. "$GIT_COMMON_DIR/branches" will be used instead.
+ +
Git will stop reading remotes from this directory in Git 3.0. Git will stop reading remotes from this directory in Git 3.0.
endif::with-breaking-changes[]
hooks:: hooks::
Hooks are customization scripts used by various Git Hooks are customization scripts used by various Git
@ -231,6 +233,7 @@ info/sparse-checkout::
This file stores sparse checkout patterns. This file stores sparse checkout patterns.
See also: linkgit:git-read-tree[1]. See also: linkgit:git-read-tree[1].
ifndef::with-breaking-changes[]
remotes:: remotes::
Stores shorthands for URL and default refnames for use Stores shorthands for URL and default refnames for use
when interacting with remote repositories via 'git fetch', when interacting with remote repositories via 'git fetch',
@ -241,6 +244,7 @@ remotes::
"$GIT_COMMON_DIR/remotes" will be used instead. "$GIT_COMMON_DIR/remotes" will be used instead.
+ +
Git will stop reading remotes from this directory in Git 3.0. Git will stop reading remotes from this directory in Git 3.0.
endif::with-breaking-changes[]
logs:: logs::
Records of changes made to refs are stored in this directory. Records of changes made to refs are stored in this directory.

View File

@ -284,6 +284,10 @@ elif docs_backend == 'asciidoctor'
] ]
endif endif
if get_option('breaking_changes')
asciidoc_common_options += ['--attribute', 'with-breaking-changes']
endif
xmlto = find_program('xmlto', dirs: program_path) xmlto = find_program('xmlto', dirs: program_path)
cmd_lists = [ cmd_lists = [