X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=diff.h;h=3fcf7010e38913a697c927882895984248b9f805;hb=65c2e0c349aa5c7f605defb52dc67f1b3658a1b9;hp=0d1f9ae347fdaf9970a80ccc47114b474dafa35d;hpb=bceafe752c03f4b13b9b1671a55d9e2acd26432d;p=git.git diff --git a/diff.h b/diff.h index 0d1f9ae3..3fcf7010 100644 --- a/diff.h +++ b/diff.h @@ -4,6 +4,10 @@ #ifndef DIFF_H #define DIFF_H +#define DIFF_FILE_CANON_MODE(mode) \ + (S_ISREG(mode) ? (S_IFREG | ce_permissions(mode)) : \ + S_ISLNK(mode) ? S_IFLNK : S_IFDIR) + extern void diff_addremove(int addremove, unsigned mode, const unsigned char *sha1, @@ -28,22 +32,38 @@ 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 +#define DIFF_SETUP_USE_CACHE 2 +#define DIFF_SETUP_USE_SIZE_CACHE 4 +extern void diff_setup(int flags); #define DIFF_DETECT_RENAME 1 #define DIFF_DETECT_COPY 2 extern void diffcore_rename(int rename_copy, int minimum_score); -extern void diffcore_pickaxe(const char *needle); +#define DIFF_PICKAXE_ALL 1 +extern void diffcore_pickaxe(const char *needle, int opts); + extern void diffcore_pathspec(const char **pathspec); +extern void diffcore_order(const char *orderfile); + +extern void diffcore_break(int max_score); + +extern void diffcore_std(const char **paths, + int detect_rename, int rename_score, + const char *pickaxe, int pickaxe_opts, + int break_opt, + const char *orderfile); + 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 */