зеркало из https://github.com/microsoft/git.git
[PATCH] Clean up diff_setup() to make it more extensible.
This changes the argument of diff_setup() from an integer that says if we are feeding reversed diff to a bitmask, so that later global options can be added more easily. Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
Родитель
09d9d1a648
Коммит
19feebc8c3
|
@ -5,7 +5,7 @@ static int cached_only = 0;
|
|||
static int diff_output_format = DIFF_FORMAT_HUMAN;
|
||||
static int match_nonexisting = 0;
|
||||
static int detect_rename = 0;
|
||||
static int reverse_diff = 0;
|
||||
static int diff_setup_opt = 0;
|
||||
static int diff_score_opt = 0;
|
||||
static const char *pickaxe = NULL;
|
||||
|
||||
|
@ -202,7 +202,7 @@ int main(int argc, const char **argv)
|
|||
continue;
|
||||
}
|
||||
if (!strcmp(arg, "-R")) {
|
||||
reverse_diff = 1;
|
||||
diff_setup_opt |= DIFF_SETUP_REVERSE;
|
||||
continue;
|
||||
}
|
||||
if (!strcmp(arg, "-S")) {
|
||||
|
@ -224,7 +224,7 @@ int main(int argc, const char **argv)
|
|||
usage(diff_cache_usage);
|
||||
|
||||
/* The rest is for paths restriction. */
|
||||
diff_setup(reverse_diff);
|
||||
diff_setup(diff_setup_opt);
|
||||
|
||||
mark_merge_entries();
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@ static const char *diff_files_usage =
|
|||
|
||||
static int diff_output_format = DIFF_FORMAT_HUMAN;
|
||||
static int detect_rename = 0;
|
||||
static int reverse_diff = 0;
|
||||
static int diff_setup_opt = 0;
|
||||
static int diff_score_opt = 0;
|
||||
static const char *pickaxe = NULL;
|
||||
static int silent = 0;
|
||||
|
@ -51,7 +51,7 @@ int main(int argc, const char **argv)
|
|||
else if (!strcmp(argv[1], "-z"))
|
||||
diff_output_format = DIFF_FORMAT_MACHINE;
|
||||
else if (!strcmp(argv[1], "-R"))
|
||||
reverse_diff = 1;
|
||||
diff_setup_opt |= DIFF_SETUP_REVERSE;
|
||||
else if (!strcmp(argv[1], "-S"))
|
||||
pickaxe = argv[1] + 2;
|
||||
else if (!strncmp(argv[1], "-M", 2)) {
|
||||
|
@ -75,7 +75,7 @@ int main(int argc, const char **argv)
|
|||
exit(1);
|
||||
}
|
||||
|
||||
diff_setup(reverse_diff);
|
||||
diff_setup(diff_setup_opt);
|
||||
|
||||
for (i = 0; i < entries; i++) {
|
||||
struct stat st;
|
||||
|
|
|
@ -10,7 +10,7 @@ static int show_tree_entry_in_recursive = 0;
|
|||
static int read_stdin = 0;
|
||||
static int diff_output_format = DIFF_FORMAT_HUMAN;
|
||||
static int detect_rename = 0;
|
||||
static int reverse_diff = 0;
|
||||
static int diff_setup_opt = 0;
|
||||
static int diff_score_opt = 0;
|
||||
static const char *pickaxe = NULL;
|
||||
static const char *header = NULL;
|
||||
|
@ -255,7 +255,7 @@ static int diff_tree_sha1(const unsigned char *old, const unsigned char *new, co
|
|||
|
||||
static void call_diff_setup(void)
|
||||
{
|
||||
diff_setup(reverse_diff);
|
||||
diff_setup(diff_setup_opt);
|
||||
}
|
||||
|
||||
static int call_diff_flush(void)
|
||||
|
@ -497,7 +497,7 @@ int main(int argc, const char **argv)
|
|||
continue;
|
||||
}
|
||||
if (!strcmp(arg, "-R")) {
|
||||
reverse_diff = 1;
|
||||
diff_setup_opt |= DIFF_SETUP_REVERSE;
|
||||
continue;
|
||||
}
|
||||
if (!strcmp(arg, "-p")) {
|
||||
|
|
5
diff.c
5
diff.c
|
@ -492,9 +492,10 @@ static void run_diff(const char *name,
|
|||
run_external_diff(pgm, name, other, one, two, xfrm_msg);
|
||||
}
|
||||
|
||||
void diff_setup(int reverse_diff_)
|
||||
void diff_setup(int flags)
|
||||
{
|
||||
reverse_diff = reverse_diff_;
|
||||
if (flags & DIFF_SETUP_REVERSE)
|
||||
reverse_diff = 1;
|
||||
}
|
||||
|
||||
struct diff_queue_struct diff_queued_diff;
|
||||
|
|
12
diff.h
12
diff.h
|
@ -28,11 +28,8 @@ extern void diff_unmerge(const char *path);
|
|||
|
||||
extern int diff_scoreopt_parse(const char *opt);
|
||||
|
||||
#define DIFF_FORMAT_HUMAN 0
|
||||
#define DIFF_FORMAT_MACHINE 1
|
||||
#define DIFF_FORMAT_PATCH 2
|
||||
#define DIFF_FORMAT_NO_OUTPUT 3
|
||||
extern void diff_setup(int reverse);
|
||||
#define DIFF_SETUP_REVERSE 1
|
||||
extern void diff_setup(int flags);
|
||||
|
||||
#define DIFF_DETECT_RENAME 1
|
||||
#define DIFF_DETECT_COPY 2
|
||||
|
@ -44,6 +41,11 @@ extern void diffcore_pathspec(const char **pathspec);
|
|||
|
||||
extern int diff_queue_is_empty(void);
|
||||
|
||||
#define DIFF_FORMAT_HUMAN 0
|
||||
#define DIFF_FORMAT_MACHINE 1
|
||||
#define DIFF_FORMAT_PATCH 2
|
||||
#define DIFF_FORMAT_NO_OUTPUT 3
|
||||
|
||||
extern void diff_flush(int output_style, int resolve_rename_copy);
|
||||
|
||||
#endif /* DIFF_H */
|
||||
|
|
Загрузка…
Ссылка в новой задаче