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

Re: [PATCH 00/59] Split config.txt

From
Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Date
Oct 20, 2018, 19:41 UTC
Message-ID
<87bm7ocsnd.fsf@evledraar.gmail.com>
In-Reply-To
<CACsJy8ADfhRk9eUJG+FE4k_D5sZvBOu47Vm4Gkae1XiOVtZyjQ@mail.gmail.com>
On Sat, Oct 20 2018, Duy Nguyen wrote:
Show 18 quoted lines
> On Sat, Oct 20, 2018 at 9:25 PM Ævar Arnfjörð Bjarmason
> <avarab@gmail.com> wrote:
>> And sometimes like in the case of git-gc(1) we have gc.* config
>> documented in two places with different prose that needs to be updated
>> in two places in a CONFIGURATION section. This series allows us to just
>> unify the two and do an "include" in two places, and more generally have
>> the convention that a given command that uses configuration could have
>> that config both documented in git-config(1), and the same docs in its
>> own manpage.
>>
>> Is doing some post-cleanup like that your eventual goal after this
>> series?
>
> I did see the possibility of including command-specific config in
> individual command man page. But I'm not planning on doing it myself.
> Some command man page is already pretty long, plus sometimes we rely
> on the core.* part which should not be included in per-command man
> page...

I might follow-up with some of that after this lands then. We wouldn't include all config (including core.*) that affects the command, but just command-specific stuff like gc.* or worktree.*.

Due to limitations of ASCIIDOC link syntax we often just mention "blah blah can be also configured as somecmd.config, see linkgit:git-config[1]", e.g. one example I recently added is at: https://git-scm.com/docs/git-fetch#_pruning

Then the user clicks on that, and ends up in this giant manpage and they need to use their browser search. Both far that web experience and for reading with "man" it would be nicer to be able to say "see the CONFIGURATION section below" which would have that included.

But arguably better would be consistently being able to know where the primary documentation is. E.g. for worktree.guessRemote (not picking on you in particular, it was just easy because worktree.* is only one config var) we have:

in git-config(1):
    worktree.guessRemote::
    	With `add`, if no branch argument, and neither of `-b` nor
    	`-B` nor `--detach` are given, the command defaults to
    	creating a new branch from HEAD.  If `worktree.guessRemote` is
    	set to true, `worktree add` tries to find a remote-tracking
    	branch whose name uniquely matches the new branch name.  If
    	such a branch exists, it is checked out and set as "upstream"
    	for the new branch.  If no such match can be found, it falls
    	back to creating a new branch from the current HEAD.
In git-worktree(1)
    --[no-]guess-remote::
    	With `worktree add <path>`, without `<commit-ish>`, instead
    	of creating a new branch from HEAD, if there exists a tracking
    	branch in exactly one remote matching the basename of `<path>`,
    	base the new branch on the remote-tracking branch, and mark
    	the remote-tracking branch as "upstream" from the new branch.
    +
    This can also be set up as the default behaviour by using the
    `worktree.guessRemote` config option.

Mostly they're saying the same, but all in different words, so you need to carefully read both to really make sure you got it. There's many of those cases, would be good if we could unify all or most of them.

Previous: Duy NguyenNext: Junio C Hamano
Message 64 of 67 in “Split config.txt”
  1. 00/59 Split config.txtNguyễn Thái Ngọc Duy, Oct 20, 2018
  2. 01/59 config.txt: move advice.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  3. 03/59 config.txt: move add.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  4. 04/59 config.txt: move alias.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  5. 05/59 config.txt: move am.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  6. 06/59 config.txt: move apply.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  7. 07/59 config.txt: move blame.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  8. 02/59 config.txt: move core.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  9. 08/59 config.txt: move branch.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  10. 10/59 config.txt: move checkout.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  11. 11/59 config.txt: move clean.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  12. 09/59 config.txt: move browser.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  13. 13/59 config.txt: move column.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  14. 14/59 config.txt: move commit.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  15. 12/59 config.txt: move color.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  16. 15/59 config.txt: move credential.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  17. 16/59 config.txt: move completion.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  18. 17/59 config.txt: move difftool.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  19. 18/59 config.txt: move fastimport.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  20. 19/59 config.txt: move filter.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  21. 20/59 config.txt: move fsck.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  22. 21/59 config.txt: move gc.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  23. 22/59 config.txt: move gitweb.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  24. 23/59 config.txt: move grep.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  25. 24/59 config.txt: move gpg.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  26. 25/59 config.txt: move guitool.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  27. 26/59 config.txt: move help.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  28. 27/59 config.txt: move ssh.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  29. 28/59 config.txt: move i18n.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  30. 29/59 config.txt: move i18n.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  31. Andrei RybakOct 21, 2018
  32. 30/59 config.txt: move init.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  33. 31/59 config.txt: move instaweb.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  34. 32/59 config.txt: move interactive.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  35. 33/59 config.txt: move log.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  36. 34/59 config.txt: move mailinfo.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  37. 36/59 config.txt: move man.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  38. 35/59 config.txt: move mailmap.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  39. 37/59 config.txt: move mergetool.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  40. 38/59 config.txt: move notes.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  41. 40/59 config.txt: move pager.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  42. 41/59 config.txt: move pretty.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  43. 39/59 config.txt: move pack.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  44. 42/59 config.txt: move protocol.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  45. 43/59 config.txt: move remote.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  46. 44/59 config.txt: move remotes.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  47. 45/59 config.txt: move repack.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  48. 46/59 config.txt: move rerere.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  49. 48/59 config.txt: move showBranch.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  50. 49/59 config.txt: move splitIndex.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  51. 47/59 config.txt: move sequencer.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  52. 51/59 config.txt: move tag.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  53. 50/59 config.txt: move status.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  54. 52/59 config.txt: move transfer.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  55. 53/59 config.txt: move uploadarchive.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  56. 55/59 config.txt: move url.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  57. 54/59 config.txt: move uploadpack.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  58. 56/59 config.txt: move user.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  59. 57/59 config.txt: move versionsort.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  60. 58/59 config.txt: move web.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  61. 59/59 config.txt: move worktree.* to a separate fileNguyễn Thái Ngọc Duy, Oct 20, 2018
  62. Ævar Arnfjörð BjarmasonOct 20, 2018
  63. Duy NguyenOct 20, 2018
  64. Ævar Arnfjörð BjarmasonOct 20, 2018
  65. Junio C HamanoOct 20, 2018
  66. Duy NguyenOct 22, 2018
  67. Stefan BellerOct 22, 2018

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.