|
|
|
/*
|
|
|
|
* 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_unmerge(const char *path);
|
|
|
|
|
|
|
|
/* These are for diff-tree-helper */
|
|
|
|
|
|
|
|
struct diff_spec {
|
|
|
|
union {
|
|
|
|
const char *name; /* path on the filesystem */
|
|
|
|
unsigned char sha1[20]; /* blob object ID */
|
|
|
|
} u;
|
|
|
|
unsigned short mode; /* file mode */
|
|
|
|
unsigned sha1_valid : 1; /* if true, use u.sha1 and trust mode.
|
|
|
|
* (however with a NULL SHA1, read them
|
|
|
|
* from the file!).
|
|
|
|
* if false, use u.name and read mode from
|
|
|
|
* the filesystem.
|
|
|
|
*/
|
|
|
|
unsigned file_valid : 1; /* if false the file does not even exist */
|
|
|
|
};
|
|
|
|
|
|
|
|
extern void run_external_diff(const char *name,
|
|
|
|
struct diff_spec *, struct diff_spec *);
|
|
|
|
|
|
|
|
#endif /* DIFF_H */
|