[PATCH 2/3] Support symlinks in git-ls-files --others.
[git/gitweb.git] / diff.h
blob0b76cc42816e1f7804df6f313f24ce9be491b6e8
1 /*
2 * Copyright (C) 2005 Junio C Hamano
3 */
4 #ifndef DIFF_H
5 #define DIFF_H
7 extern void diff_addremove(int addremove,
8 unsigned mode,
9 const unsigned char *sha1,
10 const char *base,
11 const char *path);
13 extern void diff_change(unsigned mode1, unsigned mode2,
14 const unsigned char *sha1,
15 const unsigned char *sha2,
16 const char *base, const char *path);
18 extern void diff_unmerge(const char *path);
20 /* These are for diff-tree-helper */
22 struct diff_spec {
23 unsigned char blob_sha1[20];
24 unsigned short mode; /* file mode */
25 unsigned sha1_valid : 1; /* if true, use blob_sha1 and trust mode;
26 * however with a NULL SHA1, read them
27 * from the file system.
28 * if false, use the name and read mode from
29 * the filesystem.
31 unsigned file_valid : 1; /* if false the file does not even exist */
34 extern void run_external_diff(const char *name,
35 struct diff_spec *, struct diff_spec *);
37 #endif /* DIFF_H */