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

[PATCH v6 0/5] format-patch: add cover-letter-format option

From
Mirko Faina <mroik@delayed.space>
Date
Mar 6, 2026, 22:58 UTC
Message-ID
<cover.1772837832.git.mroik@delayed.space>
In-Reply-To
<cover.1772232373.git.mroik@delayed.space>
From: Mroik <mroik@delayed.space>
Last version

[1/5] pretty.c: add %(count) and %(total) placeholders (Mirko Faina) [2/5] format-patch: move cover letter summary generation (Mirko Faina) [3/5] format-patch: add ability to use alt cover format (Mirko Faina) [4/5] format-patch: add commitListFormat config (Mirko Faina) [5/5] docs: add usage for the cover-letter fmt feature (Mirko Faina)

 Documentation/config/format.adoc    |   6 ++
 Documentation/git-format-patch.adoc |  11 +++
 builtin/log.c                       |  91 +++++++++++++++++++++----
 pretty.c                            |  15 +++++
 t/t4014-format-patch.sh             | 101 ++++++++++++++++++++++++++++
 t/t9902-completion.sh               |   1 +
 6 files changed, 211 insertions(+), 14 deletions(-)
Range-diff against v5:
1:  169db9df4d ! 1:  cfed3bddf6 pretty.c: add %(count) and %(total) placeholders
    @@ Commit message
         placeholders.
     
         Signed-off-by: Mirko Faina <mroik@delayed.space>
    -    Signed-off-by: Junio C Hamano <gitster@pobox.com>
     
      ## pretty.c ##
     @@ pretty.c: static size_t format_commit_one(struct strbuf *sb, /* in UTF-8 */
2:  c69d6409d5 ! 2:  dc131c7565 format-patch: move cover letter summary generation
    @@ Commit message
         commit list using thier own format string.
     
         Signed-off-by: Mirko Faina <mroik@delayed.space>
    -    Signed-off-by: Junio C Hamano <gitster@pobox.com>
     
      ## builtin/log.c ##
     @@ builtin/log.c: static void get_notes_args(struct strvec *arg, struct rev_info *rev)
3:  c3a92d8896 ! 3:  316c9e76ee format-patch: add ability to use alt cover format
    @@ Commit message
         useful than they'd like, mainly because the shortlog groups commits by
         author, and gives no obvious chronological order.
     
    -    Give the ability to format-patch to specify an alternative format spec
    +    Give format-patch the ability to specify an alternative format spec
         through the "--cover-letter-format" option. This option either takes
         "shortlog", which is the current format, or a format spec prefixed with
         "log:".
    @@ Commit message
             ...
     
         Signed-off-by: Mirko Faina <mroik@delayed.space>
    -    Signed-off-by: Junio C Hamano <gitster@pobox.com>
     
      ## builtin/log.c ##
     @@ builtin/log.c: static void generate_shortlog_cover_letter(struct shortlog *log,
      	shortlog_output(log);
      }
      
    -+static void generate_commit_list_cover(FILE *cover_file,const char *format,
    ++static void generate_commit_list_cover(FILE *cover_file, const char *format,
     +				       struct commit **list, int n)
     +{
     +	struct strbuf commit_line = STRBUF_INIT;
4:  a6e4e1ac84 ! 4:  c522f47e5b format-patch: add commitListFormat config
    @@ Commit message
             format.
     
         Signed-off-by: Mirko Faina <mroik@delayed.space>
    -    Signed-off-by: Junio C Hamano <gitster@pobox.com>
     
      ## builtin/log.c ##
     @@ builtin/log.c: struct format_config {
5:  40d1aa8785 ! 5:  1a4ba6dc33 docs: add usage for the cover-letter fmt feature
    @@ Metadata
      ## Commit message ##
         docs: add usage for the cover-letter fmt feature
     
    -    Document the new "--cover-letter-format" feature in format-patch and its
    +    Document the new "--cover-letter-format" option in format-patch and its
         related config variable "format.commitListFormat".
     
         Signed-off-by: Mirko Faina <mroik@delayed.space>
    -    Signed-off-by: Junio C Hamano <gitster@pobox.com>
     
      ## Documentation/config/format.adoc ##
     @@ Documentation/config/format.adoc: format.coverLetter::
    @@ Documentation/config/format.adoc: format.coverLetter::
      	Default is false.
      
     +format.commitListFormat::
    -+	A format string that specifies how to generate the commit list
    -+	of a cover-letter when format-patch is invoked. This is the
    -+	config coupled with `--cover-letter-format` in the format-patch
    -+	command and they both accept the same values.
    -+	Default is shortlog.
    ++	A format string that specifies how to generate the commit list of a
    ++	cover-letter when format-patch is invoked. This config is coupled with
    ++	the `--cover-letter-format` format-patch option command and they both
    ++	accept the same values. Default is `shortlog`.
     +
      format.outputDirectory::
      	Set a custom directory to store the resulting files instead of the
    @@ Documentation/git-format-patch.adoc: feeding the result to `git send-email`.
     +--cover-letter-format=<format-spec>::
     +	Specify the format in which to generate the commit list of the
     +	patch series. This option is available if the user wants to use
    -+	an alternative to the default shortlog format. The accepted
    ++	an alternative to the default `shortlog` format. The accepted
     +	values for format-spec are "shortlog" or a format string
     +	prefixed with `log:`.
     +	e.g. `log: %s (%an)`
-- 
2.53.0.5.g1a4ba6dc33
Previous: Mirko FainaNext: Mirko Faina
Message 56 of 113 in “format-patch: better commit list for cover letter”
  1. format-patch: better commit list for cover letterMirko Faina, Feb 20, 2026
  2. format-patch: better commit list for cover letterMirko Faina, Feb 20, 2026
  3. Mirko FainaFeb 21, 2026
  4. Junio C HamanoFeb 21, 2026
  5. Mirko FainaFeb 21, 2026
  6. Junio C HamanoFeb 21, 2026
  7. Junio C HamanoFeb 21, 2026
  8. Mirko FainaFeb 21, 2026
  9. Junio C HamanoFeb 21, 2026
  10. Mirko FainaFeb 21, 2026
  11. 0/3 format-patch: add cover-letter-format optionMirko Faina, Feb 24, 2026
  12. Mirko FainaFeb 24, 2026
  13. 0/2 format-patch: add cover-letter-format optionMirko Faina, Feb 24, 2026
  14. 1/2 format-patch: add ability to use alt cover formatMirko Faina, Feb 24, 2026
  15. Junio C HamanoFeb 24, 2026
  16. Mirko FainaFeb 24, 2026
  17. Junio C HamanoFeb 25, 2026
  18. Jeff KingFeb 25, 2026
  19. Junio C HamanoFeb 24, 2026
  20. Jeff KingFeb 25, 2026
  21. Mirko FainaFeb 25, 2026
  22. 2/2 format-patch: add commitListFormat configMirko Faina, Feb 24, 2026
  23. Junio C HamanoFeb 24, 2026
  24. Mirko FainaFeb 25, 2026
  25. Junio C HamanoFeb 25, 2026
  26. Mirko FainaFeb 26, 2026
  27. Junio C HamanoFeb 26, 2026
  28. Junio C HamanoFeb 24, 2026
  29. Junio C HamanoFeb 24, 2026
  30. Mirko FainaFeb 25, 2026
  31. Junio C HamanoFeb 25, 2026
  32. 0/4 format-patch: add cover-letter-format optionMirko Faina, Feb 27, 2026
  33. 1/4 pretty.c: add %(count) and %(total) placeholdersMirko Faina, Feb 27, 2026
  34. 2/4 format-patch: move cover letter summary generationMirko Faina, Feb 27, 2026
  35. 4/4 format-patch: add commitListFormat configMirko Faina, Feb 27, 2026
  36. 3/4 format-patch: add ability to use alt cover formatMirko Faina, Feb 27, 2026
  37. Junio C HamanoFeb 27, 2026
  38. Mirko FainaFeb 27, 2026
  39. 0/4 format-patch: add cover-letter-format optionMirko Faina, Feb 27, 2026
  40. 1/4 pretty.c: add %(count) and %(total) placeholdersMirko Faina, Feb 27, 2026
  41. 3/4 format-patch: add ability to use alt cover formatMirko Faina, Feb 27, 2026
  42. 2/4 format-patch: move cover letter summary generationMirko Faina, Feb 27, 2026
  43. 4/4 format-patch: add commitListFormat configMirko Faina, Feb 27, 2026
  44. 5/4 docs: add usage for the cover-letter fmt featureMirko Faina, Feb 27, 2026
  45. Junio C HamanoFeb 27, 2026
  46. Mirko FainaFeb 27, 2026
  47. Junio C HamanoFeb 27, 2026
  48. 0/5 format-patch: add cover-letter-format optionMirko Faina, Feb 27, 2026
  49. 1/5 pretty.c: add %(count) and %(total) placeholdersMirko Faina, Feb 27, 2026
  50. 2/5 format-patch: move cover letter summary generationMirko Faina, Feb 27, 2026
  51. 3/5 format-patch: add ability to use alt cover formatMirko Faina, Feb 27, 2026
  52. 4/5 format-patch: add commitListFormat configMirko Faina, Feb 27, 2026
  53. 5/5 docs: add usage for the cover-letter fmt featureMirko Faina, Feb 27, 2026
  54. Junio C HamanoMar 6, 2026
  55. Mirko FainaMar 6, 2026
  56. 0/5 format-patch: add cover-letter-format optionMirko Faina, Mar 6, 2026
  57. 1/5 pretty.c: add %(count) and %(total) placeholdersMirko Faina, Mar 6, 2026
  58. 2/5 format-patch: move cover letter summary generationMirko Faina, Mar 6, 2026
  59. 3/5 format-patch: add ability to use alt cover formatMirko Faina, Mar 6, 2026
  60. Junio C HamanoMar 10, 2026
  61. Mirko FainaMar 10, 2026
  62. 4/5 format-patch: add commitListFormat configMirko Faina, Mar 6, 2026
  63. 5/5 docs: add usage for the cover-letter fmt featureMirko Faina, Mar 6, 2026
  64. Junio C HamanoMar 6, 2026
  65. 0/5 format-patch: add cover-letter-format optionMirko Faina, Mar 6, 2026
  66. 1/5 pretty.c: add %(count) and %(total) placeholdersMirko Faina, Mar 6, 2026
  67. Phillip WoodMar 10, 2026
  68. Mirko FainaMar 10, 2026
  69. 2/5 format-patch: move cover letter summary generationMirko Faina, Mar 6, 2026
  70. 3/5 format-patch: add ability to use alt cover formatMirko Faina, Mar 6, 2026
  71. Phillip WoodMar 10, 2026
  72. MroikMar 10, 2026
  73. 4/5 format-patch: add commitListFormat configMirko Faina, Mar 6, 2026
  74. Phillip WoodMar 10, 2026
  75. Junio C HamanoMar 10, 2026
  76. Mirko FainaMar 10, 2026
  77. Phillip WoodMar 11, 2026
  78. Junio C HamanoMar 11, 2026
  79. Phillip WoodMar 11, 2026
  80. Junio C HamanoMar 11, 2026
  81. Mirko FainaMar 10, 2026
  82. 5/5 docs: add usage for the cover-letter fmt featureMirko Faina, Mar 6, 2026
  83. Bert WesargMar 10, 2026
  84. Phillip WoodMar 10, 2026
  85. 0/4 format-patch: add cover-letter-format optionMirko Faina, Mar 12, 2026
  86. 1/4 format-patch: move cover letter summary generationMirko Faina, Mar 12, 2026
  87. Junio C HamanoMar 12, 2026
  88. 2/4 format-patch: add ability to use alt cover formatMirko Faina, Mar 12, 2026
  89. Junio C HamanoMar 12, 2026
  90. Mirko FainaMar 12, 2026
  91. Junio C HamanoMar 12, 2026
  92. Junio C HamanoMar 12, 2026
  93. Phillip WoodMar 13, 2026
  94. Junio C HamanoMar 13, 2026
  95. Mirko FainaMar 13, 2026
  96. Junio C HamanoMar 13, 2026
  97. 3/4 format-patch: add "chronological" format for coverMirko Faina, Mar 12, 2026
  98. Junio C HamanoMar 12, 2026
  99. 4/4 format-patch: add commitListFormat configMirko Faina, Mar 12, 2026
  100. Junio C HamanoMar 12, 2026
  101. Junio C HamanoMar 12, 2026
  102. Mirko FainaMar 12, 2026
  103. Junio C HamanoMar 12, 2026
  104. 1/3 pretty.c: fix null pointer dereferenceMirko Faina, Feb 24, 2026
  105. Junio C HamanoFeb 24, 2026
  106. Mirko FainaFeb 24, 2026
  107. Mirko FainaFeb 24, 2026
  108. Jeff KingFeb 24, 2026
  109. 2/3 format-patch: add ability to use alt cover formatMirko Faina, Feb 24, 2026
  110. Jeff KingFeb 24, 2026
  111. Mirko FainaFeb 24, 2026
  112. Jeff KingFeb 24, 2026
  113. 3/3 format-patch: add commitListFormat configMirko Faina, Feb 24, 2026

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.