Subject: [PATCH v2 0/8] Assorted Documentation-related fixes

From: "Johannes Schindelin via GitGitGadget" <[email-masked]>
Date: Thu, 18 Apr 2019 06:16:37 -0700 (PDT)

While working on better support for make check-docs on Windows, I noticed a
couple more things, e.g. some "commands" were reported as being listed but
not built, e.g. gitcli (i.e. the parts of command-list.txt that are marked
as "guide").

This patch series cleans up those loose ends: after this, make check-docs 
reports no issues on Windows.

Changes since v1:

 * There is now an extra patch that gets rid of the NO_INSTALL variable in
   the Makefile altogether.
 * The generate-cmdlist.sh patch now results in more robust code (thanks,
   Junio!).
 * Patch 2/7 has a much better commit message now, and instead of filtering
   out excluded commands from the command-list.txt, it expects excluded
   commands by looking not only at $(ALL_COMMANDS) but also at 
   $(EXCLUDED_PROGRAMS).
 * Instead of the fragile logic to generate 
   Documentation/GIT-EXCLUDED-PROGRAMS that I hoped would let me get away
   with less work, I now imitate the logic of GIT-CFLAGS (and the resulting
   patch is actually a lot easier to read).

Johannes Schindelin (8):
  remote-testgit: move it into the support directory for t5801
  Makefile: drop the NO_INSTALL variable
  help -a: do not list commands that are excluded from the build
  check-docs: allow command-list.txt to contain excluded commands
  docs: exclude documentation for commands that have been excluded
  check-docs: do not bother checking for legacy scripts' documentation
  test-tool: handle the `-C <directory>` option just like `git`
  Turn `git serve` into a test helper

 .gitignore                                    |  1 -
 Documentation/.gitignore                      |  1 +
 Documentation/Makefile                        |  3 ++
 Makefile                                      | 53 +++++++++++--------
 builtin.h                                     |  1 -
 generate-cmdlist.sh                           | 10 +++-
 git.c                                         |  1 -
 builtin/serve.c => t/helper/test-serve-v2.c   |  7 +--
 t/helper/test-tool.c                          | 20 +++++++
 t/helper/test-tool.h                          |  1 +
 t/t5701-git-serve.sh                          | 32 ++++++-----
 t/t5702-protocol-v2.sh                        |  5 +-
 t/t5703-upload-pack-ref-in-want.sh            | 16 +++---
 t/t5801-remote-helpers.sh                     |  2 +
 .../t5801/git-remote-testgit                  |  0
 15 files changed, 101 insertions(+), 52 deletions(-)
 rename builtin/serve.c => t/helper/test-serve-v2.c (81%)
 rename git-remote-testgit.sh => t/t5801/git-remote-testgit (100%)

base-commit: 5ee42463399ca3cc75b7e6e4368a3a5df5b010f2
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-168%2Fdscho%2Fdocs-misc-v2
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-168/dscho/docs-misc-v2
Pull-Request: https://github.com/gitgitgadget/git/pull/168

Range-diff vs v1:

 1:  81c08b178b = 1:  81c08b178b remote-testgit: move it into the support directory for t5801
 -:  ---------- > 2:  fda0b10c84 Makefile: drop the NO_INSTALL variable
 2:  7dc5293e9e ! 3:  9b498a6f21 help -a: do not list commands that are excluded from the build
     @@ -70,7 +70,7 @@
       
       command_list () {
      -	grep -v '^#' "$1"
     -+	eval grep -ve '^#' $exclude_programs "$1"
     ++	eval "grep -ve '^#' $exclude_programs" <"$1"
       }
       
       get_categories () {
     @@ -79,7 +79,7 @@
       }
       
      +exclude_programs=
     -+while test "a$1" = "a--exclude-program"
     ++while test "--exclude-program" = "$1"
      +do
      +	shift
      +	exclude_programs="$exclude_programs -e \"^$1 \""
 3:  96ced7e17c < -:  ---------- check-docs: do not pretend that commands are listed which are excluded
 4:  31d8e43cbf < -:  ---------- docs: exclude documentation for commands that have been excluded
 -:  ---------- > 4:  ac3670a805 check-docs: allow command-list.txt to contain excluded commands
 -:  ---------- > 5:  f8d133c597 docs: exclude documentation for commands that have been excluded
 5:  fb3daa6427 = 6:  05d4ad62d6 check-docs: do not bother checking for legacy scripts' documentation
 6:  2e19f538bc = 7:  cf73021574 test-tool: handle the `-C <directory>` option just like `git`
 7:  411587e4b8 = 8:  88a5ab2332 Turn `git serve` into a test helper

-- 
gitgitgadget