X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;ds=inline;f=revision.h;h=f46b4d55a2c75e201b37dda8edd6d353722a96cb;hb=689b4d552b8108d2c92c63258990ecd2bc791739;hp=8f7907d7abdb764317612d868f58ab88f7175b59;hpb=38ebbacd93eb547b3608b64a2efc60fd79e1ea85;p=git.git diff --git a/revision.h b/revision.h index 8f7907d7a..f46b4d55a 100644 --- a/revision.h +++ b/revision.h @@ -7,7 +7,7 @@ #define SHOWN (1u<<3) #define TMP_MARK (1u<<4) /* for isolated cases; clean after use */ #define BOUNDARY (1u<<5) -#define BOUNDARY_SHOW (1u<<6) +#define CHILD_SHOWN (1u<<6) #define ADDED (1u<<7) /* Parents already parsed and added? */ #define SYMMETRIC_LEFT (1u<<8) @@ -21,6 +21,9 @@ struct rev_info { struct commit_list *commits; struct object_array pending; + /* Parents of shown commits */ + struct object_array boundary_commits; + /* Basic information */ const char *prefix; void *prune_data; @@ -40,9 +43,12 @@ struct rev_info { edge_hint:1, limited:1, unpacked:1, /* see also ignore_packed below */ - boundary:1, + boundary:2, left_right:1, - parents:1; + parents:1, + reverse:1, + cherry_pick:1, + first_parent_only:1; /* Diff flags */ unsigned int diff:1, @@ -57,8 +63,8 @@ struct rev_info { /* Format info */ unsigned int shown_one:1, - abbrev_commit:1, - relative_date:1; + abbrev_commit:1; + enum date_mode date_mode; const char **ignore_packed; /* pretend objects in these are unpacked */ int num_ignore_packed; @@ -73,6 +79,8 @@ struct rev_info { const char *add_signoff; const char *extra_headers; const char *log_reencode; + const char *subject_prefix; + int no_inline; /* Filter by commit log message */ struct grep_opt *grep_filter; @@ -89,6 +97,8 @@ struct rev_info { topo_sort_set_fn_t topo_setter; topo_sort_get_fn_t topo_getter; + + struct reflog_walk_info *reflog_info; }; #define REV_TREE_SAME 0 @@ -96,14 +106,12 @@ struct rev_info { #define REV_TREE_DIFFERENT 2 /* revision.c */ -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, const char *prefix); extern int setup_revisions(int argc, const char **argv, struct rev_info *revs, const char *def); extern int handle_revision_arg(const char *arg, struct rev_info *revs,int flags,int cant_be_filename); -extern void prepare_revision_walk(struct rev_info *revs); +extern int prepare_revision_walk(struct rev_info *revs); extern struct commit *get_revision(struct rev_info *revs); extern void mark_parents_uninteresting(struct commit *commit);