Subject: [PATCH 2/2] version: fix builtin linking & documentation

From: "Victoria Dye via GitGitGadget" <[email-masked]>
Date: Tue, 20 Sep 2022 00:19:55 +0000

From: Victoria Dye <[email-masked]>

Like most builtins, 'version' is documented in a corresponding
'Documentation/git-version.txt' and can be invoked with 'git version'.
However, the 'check-docs' Makefile target showed that it was "removed but
documented: git-version." This was cause by the fact that it is not built as
a standalone 'git-version' executable, therefore appearing "removed" to
'check-docs'.

Without a precedent for documented builtins that aren't built into an
executable *or* any clear reason why a standalone 'git-version' shouldn't
exist, the 'check-docs' error appears to correctly identify an issue. To
correct that mismatch, add 'git-version' to the 'BUILT_INS' list in the root
Makefile (indicating that the 'cmd_version()' function appears in a file
that is *not* 'builtin/version.c'). Additionally, to avoid the "no link"
message in 'check-docs', list 'git-version' as an "ancilliaryinterrogator"
(like 'git help') in 'command-list.txt'.

Signed-off-by: Victoria Dye <[email-masked]>
---
 .gitignore       | 1 +
 Makefile         | 1 +
 command-list.txt | 1 +
 3 files changed, 3 insertions(+)

diff --git a/.gitignore b/.gitignore
index 3d1b880101e..b3dcafcb331 100644
--- a/.gitignore
+++ b/.gitignore
@@ -181,6 +181,7 @@
 /git-verify-commit
 /git-verify-pack
 /git-verify-tag
+/git-version
 /git-web--browse
 /git-whatchanged
 /git-worktree
diff --git a/Makefile b/Makefile
index 35a07f80c52..cac3452edb9 100644
--- a/Makefile
+++ b/Makefile
@@ -818,6 +818,7 @@ BUILT_INS += git-show$X
 BUILT_INS += git-stage$X
 BUILT_INS += git-status$X
 BUILT_INS += git-switch$X
+BUILT_INS += git-version$X
 BUILT_INS += git-whatchanged$X
 
 # what 'all' will build but not install in gitexecdir
diff --git a/command-list.txt b/command-list.txt
index bb2e0a9214b..54b2a50f5f1 100644
--- a/command-list.txt
+++ b/command-list.txt
@@ -199,6 +199,7 @@ git-var                                 plumbinginterrogators
 git-verify-commit                       ancillaryinterrogators
 git-verify-pack                         plumbinginterrogators
 git-verify-tag                          ancillaryinterrogators
+git-version                             ancillaryinterrogators
 git-whatchanged                         ancillaryinterrogators          complete
 git-worktree                            mainporcelain
 git-write-tree                          plumbingmanipulators
-- 
gitgitgadget