2009-03-26 12:55:24 +08:00
|
|
|
#ifndef BISECT_H
|
|
|
|
#define BISECT_H
|
2018-08-16 01:54:05 +08:00
|
|
|
|
|
|
|
struct commit_list;
|
2009-03-26 12:55:24 +08:00
|
|
|
|
2017-11-06 04:24:28 +08:00
|
|
|
/*
|
|
|
|
* Find bisection. If something is found, `reaches` will be the number of
|
|
|
|
* commits that the best commit reaches. `all` will be the count of
|
|
|
|
* non-SAMETREE commits. If nothing is found, `list` will be NULL.
|
|
|
|
* Otherwise, it will be either all non-SAMETREE commits or the single
|
|
|
|
* best commit, as chosen by `find_all`.
|
|
|
|
*/
|
|
|
|
extern void find_bisection(struct commit_list **list, int *reaches, int *all,
|
|
|
|
int find_all);
|
2009-03-26 12:55:24 +08:00
|
|
|
|
2009-03-26 12:55:49 +08:00
|
|
|
extern struct commit_list *filter_skipped(struct commit_list *list,
|
|
|
|
struct commit_list **tried,
|
2009-06-06 12:41:33 +08:00
|
|
|
int show_all,
|
|
|
|
int *count,
|
|
|
|
int *skipped_first);
|
2009-03-26 12:55:49 +08:00
|
|
|
|
2009-03-29 17:55:43 +08:00
|
|
|
#define BISECT_SHOW_ALL (1<<0)
|
2012-02-28 22:00:00 +08:00
|
|
|
#define REV_LIST_QUIET (1<<1)
|
2009-03-29 17:55:43 +08:00
|
|
|
|
2009-04-07 04:28:00 +08:00
|
|
|
struct rev_list_info {
|
|
|
|
struct rev_info *revs;
|
2012-02-28 22:00:00 +08:00
|
|
|
int flags;
|
2009-04-07 04:28:00 +08:00
|
|
|
int show_timestamp;
|
|
|
|
int hdr_termination;
|
|
|
|
const char *header_prefix;
|
|
|
|
};
|
|
|
|
|
2011-08-04 20:01:00 +08:00
|
|
|
extern int bisect_next_all(const char *prefix, int no_checkout);
|
2009-03-26 12:55:54 +08:00
|
|
|
|
2009-04-19 17:55:38 +08:00
|
|
|
extern int estimate_bisect_steps(int all);
|
|
|
|
|
2015-06-29 23:40:30 +08:00
|
|
|
extern void read_bisect_terms(const char **bad, const char **good);
|
|
|
|
|
2017-09-29 14:49:39 +08:00
|
|
|
extern int bisect_clean_state(void);
|
|
|
|
|
2009-03-26 12:55:24 +08:00
|
|
|
#endif
|