1#ifndef RERERE_H 2#define RERERE_H 3 4#include"string-list.h" 5 6struct pathspec; 7 8#define RERERE_AUTOUPDATE 01 9#define RERERE_NOAUTOUPDATE 02 10#define RERERE_READONLY 04 11 12/* 13 * Marks paths that have been hand-resolved and added to the 14 * index. Set in the util field of such paths after calling 15 * rerere_remaining. 16 */ 17externvoid*RERERE_RESOLVED; 18 19struct rerere_dir; 20struct rerere_id { 21struct rerere_dir *collection; 22int variant; 23}; 24 25externintsetup_rerere(struct string_list *,int); 26externintrerere(int); 27/* 28 * Given the conflict ID and the name of a "file" used for replaying 29 * the recorded resolution (e.g. "preimage", "postimage"), return the 30 * path to that filesystem entity. With "file" specified with NULL, 31 * return the path to the directory that houses these files. 32 */ 33externconst char*rerere_path(const struct rerere_id *,const char*file); 34externintrerere_forget(struct pathspec *); 35externintrerere_remaining(struct string_list *); 36externvoidrerere_clear(struct string_list *); 37externvoidrerere_gc(struct string_list *); 38 39#define OPT_RERERE_AUTOUPDATE(v) OPT_UYN(0,"rerere-autoupdate", (v), \ 40 N_("update the index with reused conflict resolution if possible")) 41 42#endif