git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 1/5] command-list.txt: prepare with [commands] header

From
Sébastien Guimmara <sebastien.guimmara@gmail.com>
Date
May 14, 2015, 12:59 UTC
Message-ID
<1431608351-9413-2-git-send-email-sebastien.guimmara@gmail.com>
In-Reply-To
<1431608351-9413-1-git-send-email-sebastien.guimmara@gmail.com>

Add a [commands] header before the actual command list, then make the following files ignore this header in their parsing:

	* cmd-list.perl
	* Makefile (check-docks target)
Helped-by: Eric Sunshine <sunshine@sunshineco.com>
Signed-off-by: Sébastien Guimmara <sebastien.guimmara@gmail.com>
---
 Documentation/cmd-list.perl | 4 ++++
 Makefile                    | 3 ++-
 command-list.txt            | 1 +
 3 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/Documentation/cmd-list.perl b/Documentation/cmd-list.perl
index 04f9977..06a5fd6 100755
--- a/Documentation/cmd-list.perl
+++ b/Documentation/cmd-list.perl
@@ -38,6 +38,10 @@ sub format_one {
 	}
 }
 
+while (<>) {
+	last if /^\[commands\]/;
+}
+
 my %cmds = ();
 for (sort <>) {
 	next if /^#/;
diff --git a/Makefile b/Makefile
index 5f3987f..7c57369 100644
--- a/Makefile
+++ b/Makefile
@@ -2447,7 +2447,7 @@ check-docs::
 		esac ; \
 		test -f "Documentation/$$v.txt" || \
 		echo "no doc: $$v"; \
-		sed -e '/^#/d' command-list.txt | \
+		sed -e '1,/^\[commands\]/d' -e '/^#/d' <command-list.txt | \
 		grep -q "^$$v[ 	]" || \
 		case "$$v" in \
 		git) ;; \
@@ -2456,6 +2456,7 @@ check-docs::
 	done; \
 	( \
 		sed -e '/^#/d' \
+		    -e '1,/^\[commands\]/d' \
 		    -e 's/[ 	].*//' \
 		    -e 's/^/listed /' command-list.txt; \
 		$(MAKE) -C Documentation print-man1 | \
diff --git a/command-list.txt b/command-list.txt
index f1eae08..40fbe2f 100644
--- a/command-list.txt
+++ b/command-list.txt
@@ -1,5 +1,6 @@
 # List of known git commands.
 # command name				category [deprecated] [common]
+[commands]
 git-add                                 mainporcelain common
 git-am                                  mainporcelain
 git-annotate                            ancillaryinterrogators
-- 
2.4.0
Previous: Sébastien GuimmaraNext: Sébastien Guimmara
Message 2 of 12 in “git help: group common commands by theme”
  1. 0/5 git help: group common commands by themeSébastien Guimmara, May 14, 2015
  2. 1/5 command-list.txt: prepare with [commands] headerSébastien Guimmara, May 14, 2015
  3. 2/5 command-list.txt: add with [common] blockSébastien Guimmara, May 14, 2015
  4. 3/5 generate-cmdlist: parse common group commandsSébastien Guimmara, May 14, 2015
  5. Junio C HamanoMay 14, 2015
  6. Eric SunshineMay 14, 2015
  7. Sébastien GuimmaraMay 15, 2015
  8. 4/5 command-list.txt: drop the common- prefixSébastien Guimmara, May 14, 2015
  9. 5/5 help.c: output the typical Git workflowSébastien Guimmara, May 14, 2015
  10. 5/5 help.c: output the typical Git workflowSébastien Guimmara, May 14, 2015
  11. Junio C HamanoMay 14, 2015
  12. Sébastien GuimmaraMay 15, 2015

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.