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

Re: [PATCH 8/4] check-docs: get documented command list from Makefile

From
Junio C Hamano <gitster@pobox.com>
Date
Aug 8, 2012, 21:35 UTC
Message-ID
<7vwr19qd79.fsf@alter.siamese.dyndns.org>
In-Reply-To
<20120808205752.GD12838@sigill.intra.peff.net>
Jeff King <peff@peff.net> writes:
Show 10 quoted lines
> The current code tries to get a list of documented commands
> by doing "ls Documentation/git*txt" and culling a bunch of
> special cases from the result. Looking for "git-*.txt" would
> be more accurate, but would miss a few commands like
> "gitweb" and "gitk".
>
> Fortunately, Documentation/Makefile already knows what this
> list is, so we can just ask it. Annoyingly, we still have to
> post-process its output a little, since make will print
> extra cruft like "GIT-VERSION-FILE is up to date" to stdout.

Yeah, traditional way to do this is to give special markers around what you want your Makefile to tell you, e.g.

	sayit:
        	echo "@@@ $(FOO) ###"
	useit:
        	$(MAKE) sayit | \
                sed -ne 's/^@@@ \(.*\) ###$/\1/p' | \
                ... use it ...

but in this case we know we want "*.txt", so the way you filtered the output is sufficient.

Show 7 quoted lines
> Now that our list is accurate, we can remove all of the ugly
> special-cases.
>
> Signed-off-by: Jeff King <peff@peff.net>
> ---
>  Documentation/Makefile |  3 +++
>  Makefile               | 26 ++------------------------
Yay, maintainability comes with a large line reduction bonus ;-)
Thanks.
Previous: Jeff KingNext: Philip Oakley
Message 13 of 21 in “Documentation: list git-credential in plumbing commands”
  1. Documentation: list git-credential in plumbing commandsMatthieu Moy, Aug 8, 2012
  2. Junio C HamanoAug 8, 2012
  3. Documentation: list git-credential in plumbing commandsMatthieu Moy, Aug 8, 2012
  4. 0/4 update "make check-docs"Jeff King, Aug 8, 2012
  5. 1/4 check-docs: mention gitweb speciallyJeff King, Aug 8, 2012
  6. 2/4 check-docs: update non-command documentation listJeff King, Aug 8, 2012
  7. Junio C HamanoAug 8, 2012
  8. Jeff KingAug 8, 2012
  9. 5/4 check-docs: factor out command-listJeff King, Aug 8, 2012
  10. 6/4 check-docs: list git-gui as a commandJeff King, Aug 8, 2012
  11. 7/4 check-docs: drop git-help special-caseJeff King, Aug 8, 2012
  12. 8/4 check-docs: get documented command list from MakefileJeff King, Aug 8, 2012
  13. Junio C HamanoAug 8, 2012
  14. Philip OakleyAug 8, 2012
  15. Junio C HamanoAug 8, 2012
  16. Philip OakleyAug 9, 2012
  17. 3/4 command-list: add git-sh-i18nJeff King, Aug 8, 2012
  18. 4/4 command-list: mention git-credential-* helpersJeff King, Aug 8, 2012
  19. Matthieu MoyAug 9, 2012
  20. Junio C HamanoAug 8, 2012
  21. Jeff KingAug 8, 2012

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.