diff options
author | Junio C Hamano <junkio@cox.net> | 2005-05-18 09:10:47 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-05-18 09:39:40 -0700 |
commit | b58f23b38a9a9f28d751311353819d3cdf6a86da (patch) | |
tree | 680c51b9bdc494e0229f679e979875dc4f1c83a5 /diff.c | |
parent | bf0f910d1dd5e5b291ea818f3037e8f8fe8caffc (diff) | |
download | git-b58f23b38a9a9f28d751311353819d3cdf6a86da.tar.gz |
[PATCH] Fix diff output take #4.
This implements the output format suggested by Linus in
<Pine.LNX.4.58.0505161556260.18337@ppc970.osdl.org>, except the
imaginary diff option is spelled "diff --git" with double dashes as
suggested by Matthias Urlichs.
Signed-off-by: Junio C Hamano <junkio@cox.net>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'diff.c')
-rw-r--r-- | diff.c | 14 |
1 files changed, 7 insertions, 7 deletions
@@ -83,7 +83,6 @@ static void builtin_diff(const char *name, struct diff_tempfile *temp) { int i, next_at; - const char *git_prefix = "# mode: "; const char *diff_cmd = "diff -L'%s%s' -L'%s%s'"; const char *diff_arg = "'%s' '%s'||:"; /* "||:" is to return 0 */ const char *input_name_sq[2]; @@ -123,15 +122,16 @@ static void builtin_diff(const char *name, next_at += snprintf(cmd+next_at, cmd_size-next_at, diff_arg, input_name_sq[0], input_name_sq[1]); + printf("diff --git a/%s b/%s\n", name, name); if (!path1[0][0]) - printf("%s. %s %s\n", git_prefix, temp[1].mode, name); + printf("new file mode %s\n", temp[1].mode); else if (!path1[1][0]) - printf("%s%s . %s\n", git_prefix, temp[0].mode, name); + printf("deleted file mode %s\n", temp[0].mode); else { - if (strcmp(temp[0].mode, temp[1].mode)) - printf("%s%s %s %s\n", git_prefix, - temp[0].mode, temp[1].mode, name); - + if (strcmp(temp[0].mode, temp[1].mode)) { + printf("old mode %s\n", temp[0].mode); + printf("new mode %s\n", temp[1].mode); + } if (strncmp(temp[0].mode, temp[1].mode, 3)) /* we do not run diff between different kind * of objects. |