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

[PATCH 2/2] format-patch: wrap cover-letter's shortlog sensibly

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
Mar 2, 2008, 15:53 UTC
Message-ID
<alpine.LSU.1.00.0803021553090.22527@racer.site>
In-Reply-To
<alpine.LSU.1.00.0803021552210.22527@racer.site>

Earlier, overly-long onelines would not be wrapped at all, and indented with 6 spaces.

Instead, we now wrap around at 72 characters, with a first-line indent of 2 spaces, and the rest with 4 spaces (like the "What's in" messages of Junio).

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
---
 builtin-log.c                                      |    4 ++++
 ...tch_--stdout_--cover-letter_-n_initial..master^ |    4 ++--
 t/t4014-format-patch.sh                            |   19 +++++++++++++++++++
 3 files changed, 25 insertions(+), 2 deletions(-)
diff --git a/builtin-log.c b/builtin-log.c
index fd9b3ae..fe8fc6f 100644
--- a/builtin-log.c
+++ b/builtin-log.c
@@ -683,6 +683,10 @@ static void make_cover_letter(struct rev_info *rev, int use_stdout,
 	strbuf_release(&sb);
 
 	shortlog_init(&log);
+	log.wrap_lines = 1;
+	log.wrap = 72;
+	log.in1 = 2;
+	log.in2 = 4;
 	for (i = 0; i < nr; i++)
 		shortlog_add_commit(&log, list[i]);
 
diff --git a/t/t4013/diff.format-patch_--stdout_--cover-letter_-n_initial..master^ b/t/t4013/diff.format-patch_--stdout_--cover-letter_-n_initial..master^
index 0151453..8dab4bf 100644
--- a/t/t4013/diff.format-patch_--stdout_--cover-letter_-n_initial..master^
+++ b/t/t4013/diff.format-patch_--stdout_--cover-letter_-n_initial..master^
@@ -7,8 +7,8 @@ Subject: [DIFFERENT_PREFIX 0/2] *** SUBJECT HERE ***
 *** BLURB HERE ***
 
 A U Thor (2):
-      Second
-      Third
+  Second
+  Third
 
  dir/sub |    4 ++++
  file0   |    3 +++
diff --git a/t/t4014-format-patch.sh b/t/t4014-format-patch.sh
index 6d86b7d..b2b7a8d 100755
--- a/t/t4014-format-patch.sh
+++ b/t/t4014-format-patch.sh
@@ -211,4 +211,23 @@ test_expect_success 'cover-letter inherits diff options' '
 	grep "file => foo .* 0 *$" 0000-cover-letter.patch
 
 '
+
+cat > expect << EOF
+  This is an excessively long subject line for a message due to the
+    habit some projects have of not having a short, one-line subject at
+    the start of the commit message, but rather sticking a whole
+    paragraph right at the start as the only thing in the commit
+    message. It had better not become the filename for the patch.
+  foo
+
+EOF
+
+test_expect_success 'shortlog of cover-letter wraps overly-long onelines' '
+
+	git format-patch --cover-letter -2 &&
+	sed -e "1,/A U Thor/d" -e "/^$/q" < 0000-cover-letter.patch > output &&
+	git diff expect output
+
+'
+
 test_done
-- 
1.5.4.3.510.g7cdd
Previous: Johannes SchindelinNext: Junio C Hamano
Message 27 of 29 in “Builtin "git remote"”
  1. 0/5 Builtin "git remote"Johannes Schindelin, Feb 29, 2008
  2. 1/5 path-list: add functions to work with unsorted listsJohannes Schindelin, Feb 29, 2008
  3. Junio C HamanoFeb 29, 2008
  4. Johannes SchindelinFeb 29, 2008
  5. 0/6 Builtin remote, v2Johannes Schindelin, Mar 1, 2008
  6. 1/6 Rename path_list to string_listJohannes Schindelin, Mar 1, 2008
  7. David KågedalMar 11, 2008
  8. Johannes SchindelinMar 11, 2008
  9. David KågedalMar 11, 2008
  10. 2/6 string-list: add functions to work with unsorted listsJohannes Schindelin, Mar 1, 2008
  11. 3/6 parseopt: add flag to stop on first non optionJohannes Schindelin, Mar 1, 2008
  12. 4/6 Test "git remote show" and "git remote prune"Johannes Schindelin, Mar 1, 2008
  13. 5/6 Make git-remote a builtinJohannes Schindelin, Mar 1, 2008
  14. 6/6 builtin-remote: prune remotes correctly that were added with --mirrorJohannes Schindelin, Mar 1, 2008
  15. 2/5 parseopt: add flag to stop on first non optionJohannes Schindelin, Feb 29, 2008
  16. 3/5 Test "git remote show" and "git remote prune"Johannes Schindelin, Feb 29, 2008
  17. 4/5 Make git-remote a builtinJohannes Schindelin, Feb 29, 2008
  18. 5/5 builtin-remote: prune remotes correctly that were added with --mirrorJohannes Schindelin, Feb 29, 2008
  19. Junio C HamanoFeb 29, 2008
  20. Johannes SchindelinFeb 29, 2008
  21. Daniel BarkalowFeb 29, 2008
  22. Johannes SchindelinFeb 29, 2008
  23. Johannes SchindelinMar 2, 2008
  24. Johannes SchindelinMar 2, 2008
  25. 0/2 format-patch --cover-letter improvementsJohannes Schindelin, Mar 2, 2008
  26. 1/2 format-patch: use the diff options for the cover letter, tooJohannes Schindelin, Mar 2, 2008
  27. 2/2 format-patch: wrap cover-letter's shortlog sensiblyJohannes Schindelin, Mar 2, 2008
  28. Junio C HamanoMar 2, 2008
  29. Johannes SchindelinMar 2, 2008

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.