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

Re: push.default documented in "man git-push"?

From
Junio C Hamano <gitster@pobox.com>
Date
Oct 8, 2012, 17:12 UTC
Message-ID
<7v8vbgnb19.fsf@alter.siamese.dyndns.org>
In-Reply-To
<20121003214051.GD4484@sigill.intra.peff.net>
Jeff King <peff@peff.net> writes:
Show 24 quoted lines
> On Wed, Oct 03, 2012 at 11:26:55AM -0700, Junio C Hamano wrote:
>
>> Please do not label the list as "These variables affect this
>> command" to give a false impression that it is the complete list if
>> it isn't.
>> 
>> Unless somebody promises to keep an up-to-date complete list there
>> (or even better, come up with a mechanism to help us keep that
>> promise automatically, perhaps by annotating pieces with structured
>> comments in config.txt and automatically appending such a section to
>> manual pages of relevant commands), that is.
>>
>> With a weaker phrase, e.g. "These configuration variables may be of
>> interest", such a list may not hurt readers, but personally I do not
>> think it adds much value to have a list of variables without even a
>> single line description of what each is used for.
>
> We talked a while ago about actually moving the config options into the
> individual manpages, and generating config.txt to simply contain an
> index of keys and where their definitions may be found. That also has
> the "list without description" characteristic. But presumably you would
> be looking for keys in the manual of the command you want to affect, and
> the master list would mostly be for redirecting you to the right
> manpage.

That cuts both ways for configuration variables that affects or are affected by multiple commands, and that would range from the trivial example of configuration variables for fetch and merge that appear to take effect in "git pull" from the end users' perspective, to the more complex ones like remotes.*.merge and remotes.*.url that are set to make the @{upstream} notation work.

Show 14 quoted lines
> It does break down a little when you have keys that could go in multiple
> pages. In many cases, this can be solved by a canonical location that
> describes the shared concepts. For example, `diff.*` should probably go
> into a `gitdiff(7)` that talks about the various diff options and
> formats.
>
> Of course, that only works if you think pulling out the shared diff bits
> from git-diff*, git-log, etc into a separate manpage is a good idea. I
> do, because I think it makes it more clear to the reader how the
> concepts connect (as opposed to simply including shared bits inline in
> the manpages, as we do now, with no indication that the same content is
> going to apply in many places). But it does have a downside that
> individual manpages are not as easily searchable via the pager, as you
> may have to follow a cross-reference to find what you want.

I suspect that approach would make individual manual pages less approacheable by new people, as they will have more required reading.

git(1) currently guides people to user manual, and then points at individual pages, assuming that these shared concepts (e.g. the one for "diff" you discuss in the above paragraph) are fully mastered once the user manual is read. Perhaps we would need to replace it with a "concepts" manual, or enhance it with more "concepts" material?

Previous: Jeff KingNext: Ramkumar Ramachandra
Message 21 of 35 in “push.default documented in "man git-push"?”
  1. David GlasserOct 2, 2012
  2. Ramkumar RamachandraOct 2, 2012
  3. David GlasserOct 2, 2012
  4. Ramkumar RamachandraOct 2, 2012
  5. Matthieu MoyOct 2, 2012
  6. Ramkumar RamachandraOct 2, 2012
  7. Junio C HamanoOct 2, 2012
  8. Matthieu MoyOct 2, 2012
  9. Junio C HamanoOct 2, 2012
  10. David GlasserOct 2, 2012
  11. Junio C HamanoOct 2, 2012
  12. Matthieu MoyOct 3, 2012
  13. Ramkumar RamachandraOct 3, 2012
  14. Nguyen Thai Ngoc DuyOct 3, 2012
  15. Ramkumar RamachandraOct 3, 2012
  16. Nguyen Thai Ngoc DuyOct 3, 2012
  17. Ramkumar RamachandraOct 3, 2012
  18. Nguyen Thai Ngoc DuyOct 3, 2012
  19. Junio C HamanoOct 3, 2012
  20. Jeff KingOct 3, 2012
  21. Junio C HamanoOct 8, 2012
  22. Ramkumar RamachandraOct 7, 2012
  23. Junio C HamanoOct 7, 2012
  24. Ramkumar RamachandraOct 8, 2012
  25. Nguyen Thai Ngoc DuyOct 8, 2012
  26. Junio C HamanoOct 3, 2012
  27. Nguyen Thai Ngoc DuyOct 4, 2012
  28. Junio C HamanoOct 4, 2012
  29. Nguyen Thai Ngoc DuyOct 5, 2012
  30. Junio C HamanoOct 5, 2012
  31. Nguyen Thai Ngoc DuyOct 11, 2012
  32. Matthieu MoyOct 11, 2012
  33. Nguyen Thai Ngoc DuyOct 11, 2012
  34. Junio C HamanoOct 11, 2012
  35. Peter KreftingOct 3, 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.