From ce24067549a8554b214e723d7aa4bc063c54409e Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Fri, 3 Jun 2005 01:36:43 -0700 Subject: [PATCH] diff: Fix docs and add -O to diff-helper. This patch updates diff documentation and usage strings: - clarify the semantics of -R. It is not "output in reverse"; rather, it is "I will feed diff backwards". Semantically they are different when -C is involved. - describe -O in usage strings of diff-* brothers. It was implemented, documented but not described in usage text. Also it adds -O to diff-helper. Like -S (and unlike -M/-C/-B), this option can work on sanitized diff-raw output produced by the diff-* brothers. While we are at it, the call it makes to diffcore is cleaned up to use the diffcore_std() like everybody else, and the declaration for the low level diffcore routines are moved from diff.h (public) to diffcore.h (private between diff.c and diffcore backends). Signed-off-by: Junio C Hamano Signed-off-by: Linus Torvalds --- diff-helper.c | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) (limited to 'diff-helper.c') diff --git a/diff-helper.c b/diff-helper.c index c9e287f652..04e6f2cd72 100644 --- a/diff-helper.c +++ b/diff-helper.c @@ -7,11 +7,22 @@ static const char *pickaxe = NULL; static int pickaxe_opts = 0; +static const char *orderfile = NULL; static int line_termination = '\n'; static int inter_name_termination = '\t'; +static void flush_them(int ac, const char **av) +{ + diffcore_std(av + 1, + 0, 0, /* no renames */ + pickaxe, pickaxe_opts, + -1, /* no breaks */ + orderfile); + diff_flush(DIFF_FORMAT_PATCH, 0); +} + static const char *diff_helper_usage = - "git-diff-helper [-z] [-S] paths..."; + "git-diff-helper [-z] [-S] [-O] paths..."; int main(int ac, const char **av) { struct strbuf sb; @@ -131,17 +142,9 @@ int main(int ac, const char **av) { new_path); continue; } - if (1 < ac) - diffcore_pathspec(av + 1); - if (pickaxe) - diffcore_pickaxe(pickaxe, pickaxe_opts); - diff_flush(DIFF_FORMAT_PATCH, 0); + flush_them(ac, av); printf(garbage_flush_format, sb.buf); } - if (1 < ac) - diffcore_pathspec(av + 1); - if (pickaxe) - diffcore_pickaxe(pickaxe, pickaxe_opts); - diff_flush(DIFF_FORMAT_PATCH, 0); + flush_them(ac, av); return 0; } -- cgit v1.2.3