threads / patch / 3885

patchdiff --stat: do not do its own three-dashes.

Subject: [PATCH] diff --stat: do not do its own three-dashes.

## tl;dr

One message between Apr 15, 2006 and Apr 15, 2006. Diffs are folded; open one to read it.

replies: 0people: 1as markdown or json

Junio C Hamano· Apr 15, 2006, 21:10 UTC · lore

I missed that "git-diff-* --stat" spits out three-dash separator on its own without being asked. Remove it.

When we output commit log followed by diff, perhaps --patch-with-stat, for downstream consumer, we _would_ want the three-dash between the message and the diff material, but that logic belongs to the caller, not diff generator.

Signed-off-by: Junio C Hamano <junkio@cox.net>
---
 * Now the next task is to make "git log" not to do its own
   commit formatting, but let the log_tree_commit() do it, just
   like we do in diff-tree --pretty.  This would open the door
   for us to (optionally) omit log message when there is no
   diff, and honor the --max-count by counting what we actually
   output.
   When that happens, the printf() I moved tentatively to
   cmd_log() should become part of the commit formatting
   log_tree_commit() does, perhaps with --pretty=format-patch.
 diff.c |    2 --
 git.c  |    4 +++-
 2 files changed, 3 insertions(+), 3 deletions(-)
6f4780f9dfd3bc6b23f9ea66b3d49577e0a0c2f9
Show changes to 2 files +3 −3

diff.c, git.c

diff --git a/diff.c b/diff.c
index f1b672d..cda8d20 100644
--- a/diff.c
+++ b/diff.c
@@ -245,8 +245,6 @@ static void show_stats(struct diffstat_t
 	if (data->nr == 0)
 		return;
 
-	printf("---\n");
-
 	for (i = 0; i < data->nr; i++) {
 		struct diffstat_file *file = data->files[i];
 
diff --git a/git.c b/git.c
index 78ed403..61265a8 100644
--- a/git.c
+++ b/git.c
@@ -388,8 +388,10 @@ static int cmd_log(int argc, const char 
 		pretty_print_commit(commit_format, commit, ~0, buf,
 				    LOGSIZE, abbrev);
 		printf("%s\n", buf);
-		if (do_diff)
+		if (do_diff) {
+			printf("---\n");
 			log_tree_commit(&opt, commit);
+		}
 		shown = 1;
 		free(commit->buffer);
 		commit->buffer = NULL;
-- 
1.3.0.rc4.g5a48-dirty

← back to recent threads