git/diff.h
Junio C Hamano 6b14d7faf0 [PATCH] Diffcore updates.
This moves the path selection logic from individual programs to a new
diffcore transformer (diff-tree still needs to have its own for
performance reasons).  Also the header printing code in diff-tree was
tweaked not to produce anything when pickaxe is in effect and there is
nothing interesting to report.  An interesting example is the following
in the GIT archive itself:

    $ git-whatchanged -p -C -S'or something in a real script'

Signed-off-by: Junio C Hamano <junkio@cox.net>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-05-22 10:17:50 -07:00

50 lines
1.2 KiB
C

/*
* Copyright (C) 2005 Junio C Hamano
*/
#ifndef DIFF_H
#define DIFF_H
extern void diff_addremove(int addremove,
unsigned mode,
const unsigned char *sha1,
const char *base,
const char *path);
extern void diff_change(unsigned mode1, unsigned mode2,
const unsigned char *sha1,
const unsigned char *sha2,
const char *base, const char *path);
extern void diff_guif(unsigned mode1,
unsigned mode2,
const unsigned char *sha1,
const unsigned char *sha2,
const char *path1,
const char *path2);
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_DETECT_RENAME 1
#define DIFF_DETECT_COPY 2
extern void diffcore_rename(int rename_copy, int minimum_score);
extern void diffcore_prune(void);
extern void diffcore_pickaxe(const char *needle);
extern void diffcore_pathspec(const char **pathspec);
extern int diff_queue_is_empty(void);
extern void diff_flush(int output_style);
#endif /* DIFF_H */