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

[PATCHv5/RFC 1/6] Documentation: Preparation for gitweb manpages

From
Jakub Narebski <jnareb@gmail.com>
Date
Oct 8, 2011, 18:31 UTC
Message-ID
<1318098723-12813-2-git-send-email-jnareb@gmail.com>
In-Reply-To
<1318098723-12813-1-git-send-email-jnareb@gmail.com>

Gitweb documentation currently consists of gitweb/README, gitweb/INSTALL and comments in gitweb source code. This is harder to find, use and browse than manpages ("man gitweb" or "git help gitweb") and HTML documentation ("git help --web gitweb").

The goal of the next two commits is to move documentation out of gitweb/README to gitweb.txt and gitweb.conf.txt manpages, reducing its size 10x from around 500 to around 50 lines (two pages), and to move information not related directly to building and installing gitweb out of gitweb/INSTALL.

The idea is to have the gitweb manpage sources reside in AsciiDoc format in the Documentation/ directory, like for gitk and git-gui. This means that building git documentation (with "make doc") would also build gitweb manpages.

An alternate solution would be to have gitweb documentation in the gitweb/ directory, perhaps in POD format (see perlpod(1)).

This patch adds infrastructure for easy generation of only gitweb-related manpages. It adds a currently empty 'gitweb-doc' target to Documentation/Makefile, and a 'doc' proxy target to gitweb/Makefile.

This way to build only gitweb documentation in both 'man' and 'html' formats one can use

  make -C gitweb doc
or
  cd gitweb; make doc

This somewhat follows the idea of 'full-svn-test' and 'gitweb-test' in t/Makefile. Note also that with alternate solution, where source of gitweb manpages would reside in the gitweb/ directory, "make doc" would invoke "make -C gitweb doc" to generate formatted docs.

The gitweb.conf(5) and gitweb(1) manpages will be added in subsequent commits.

[Commit message improved with help of Jonathan Nieder]
Signed-off-by: Jakub Narebski <jnareb@gmail.com>
---
This commit is not strictly necessary: it only adds "doc" target to
gitweb/Makefile, and "gitweb-doc" target to Documentation/Makefile;
neither is run when e.g. generating RPM.

They are here because they would be here if documentation source was kept along with gitweb script in the 'gitweb/' subdirectory, and to make it easier and faster to test the changes.

 Documentation/Makefile |    3 +++
 gitweb/Makefile        |    7 ++++++-
 2 files changed, 9 insertions(+), 1 deletions(-)
diff --git a/Documentation/Makefile b/Documentation/Makefile
index 6346a75..44be67b 100644
--- a/Documentation/Makefile
+++ b/Documentation/Makefile
@@ -170,6 +170,9 @@ info: git.info gitman.info
 
 pdf: user-manual.pdf
 
+GITWEB_DOC = $(filter gitweb.%,$(DOC_HTML) $(DOC_MAN1) $(DOC_MAN5) $(DOC_MAN7))
+gitweb-doc: $(GITWEB_DOC)
+
 install: install-man
 
 install-man: man
diff --git a/gitweb/Makefile b/gitweb/Makefile
index 1c85b5f..3014d80 100644
--- a/gitweb/Makefile
+++ b/gitweb/Makefile
@@ -174,6 +174,11 @@ test-installed:
 	GITWEB_TEST_INSTALLED='$(DESTDIR_SQ)$(gitwebdir_SQ)' \
 		$(MAKE) -C ../t gitweb-test
 
+### Documentation
+
+doc:
+	$(MAKE) -C ../Documentation gitweb-doc
+
 ### Installation rules
 
 install: all
@@ -187,5 +192,5 @@ install: all
 clean:
 	$(RM) gitweb.cgi static/gitweb.min.js static/gitweb.min.css GITWEB-BUILD-OPTIONS
 
-.PHONY: all clean install test test-installed .FORCE-GIT-VERSION-FILE FORCE
+.PHONY: all clean install test test-installed doc .FORCE-GIT-VERSION-FILE FORCE
 
-- 
1.7.6
Previous: Jakub NarebskiNext: Junio C Hamano
Message 2 of 22 in “[PATCHv5/RFC 0/6] Moving gitweb documentation to manpages”
  1. Jakub NarebskiOct 8, 2011
  2. 1/6 Documentation: Preparation for gitweb manpagesJakub Narebski, Oct 8, 2011
  3. Junio C HamanoOct 10, 2011
  4. Jakub NarebskiOct 10, 2011
  5. Junio C HamanoOct 10, 2011
  6. Jakub NarebskiOct 11, 2011
  7. Junio C HamanoOct 11, 2011
  8. Jakub NarebskiOct 11, 2011
  9. 2/6 gitweb: Add manpage for gitweb configuration filesJakub Narebski, Oct 8, 2011
  10. 3/6 gitweb: Add manpage for gitwebJakub Narebski, Oct 8, 2011
  11. Junio C HamanoOct 10, 2011
  12. Jakub NarebskiOct 10, 2011
  13. Jonathan NiederOct 10, 2011
  14. Drew NorthupOct 11, 2011
  15. Jakub NarebskiOct 11, 2011
  16. Drew NorthupOct 11, 2011
  17. Jakub NarebskiOct 11, 2011
  18. Drew NorthupOct 11, 2011
  19. 4/6 Documentation: Link to gitweb(1) and gitweb.conf(5) in other manpagesJakub Narebski, Oct 8, 2011
  20. 5/6 Documentation: Add gitweb config variables to git-config(1)Jakub Narebski, Oct 8, 2011
  21. 6/6 gitweb: Add gitweb manpages to 'gitweb' package in git.specJakub Narebski, Oct 8, 2011
  22. Junio C HamanoOct 10, 2011

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.