X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=revision.h;h=7d85b0f2e97884daea9dfc9020526b91e8c4974a;hb=1a82e79315ed633f6b0b1fc4076054950c5380d3;hp=83d28d520557ae37eea59dd7446e46edb6ef7cf6;hpb=910a5916b40575501b452a61e6447f96e77ec95e;p=git.git diff --git a/revision.h b/revision.h index 83d28d52..7d85b0f2 100644 --- a/revision.h +++ b/revision.h @@ -7,9 +7,11 @@ #define SHOWN (1u<<3) #define TMP_MARK (1u<<4) /* for isolated cases; clean after use */ #define BOUNDARY (1u<<5) -#define ADDED (1u<<6) /* Parents already parsed and added? */ +#define BOUNDARY_SHOW (1u<<6) +#define ADDED (1u<<7) /* Parents already parsed and added? */ struct rev_info; +struct log_info; typedef void (prune_fn_t)(struct rev_info *revs, struct commit *commit); @@ -26,6 +28,7 @@ struct rev_info { /* Traversal flags */ unsigned int dense:1, no_merges:1, + no_walk:1, remove_empty_trees:1, lifo:1, topo_order:1, @@ -38,11 +41,37 @@ struct rev_info { boundary:1, parents:1; + /* Diff flags */ + unsigned int diff:1, + full_diff:1, + show_root_diff:1, + no_commit_id:1, + verbose_header:1, + ignore_merges:1, + combine_merges:1, + dense_combined_merges:1, + always_show_header:1; + + /* Format info */ + unsigned int shown_one:1, + abbrev_commit:1; + unsigned int abbrev; + enum cmit_fmt commit_format; + struct log_info *loginfo; + int nr, total; + const char *mime_boundary; + const char *add_signoff; + const char *extra_headers; + /* special limits */ int max_count; unsigned long max_age; unsigned long min_age; + /* diff info for patches and for paths limiting */ + struct diff_options diffopt; + struct diff_options pruning; + topo_sort_set_fn_t topo_setter; topo_sort_get_fn_t topo_getter; }; @@ -52,8 +81,8 @@ struct rev_info { #define REV_TREE_DIFFERENT 2 /* revision.c */ -extern int rev_same_tree_as_empty(struct tree *t1); -extern int rev_compare_tree(struct tree *t1, struct tree *t2); +extern int rev_same_tree_as_empty(struct rev_info *, struct tree *t1); +extern int rev_compare_tree(struct rev_info *, struct tree *t1, struct tree *t2); extern void init_revisions(struct rev_info *revs); extern int setup_revisions(int argc, const char **argv, struct rev_info *revs, const char *def);