X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=revision.h;h=3adab9590a14e25c2659a1933db4af456c263a5b;hb=7768e27e1d3f3d5e253e795433033b5de1d1c157;hp=bdbdd235d821eff10eae42d32933152f2d22bd74;hpb=0a2586c807fadc4b13a741e693471765870f6bb4;p=git.git diff --git a/revision.h b/revision.h index bdbdd235d..3adab9590 100644 --- a/revision.h +++ b/revision.h @@ -18,7 +18,7 @@ typedef void (prune_fn_t)(struct rev_info *revs, struct commit *commit); struct rev_info { /* Starting list */ struct commit_list *commits; - struct object_list *pending_objects; + struct object_array pending; /* Basic information */ const char *prefix; @@ -30,6 +30,7 @@ struct rev_info { no_merges:1, no_walk:1, remove_empty_trees:1, + simplify_history:1, lifo:1, topo_order:1, tag_objects:1, @@ -37,7 +38,7 @@ struct rev_info { blob_objects:1, edge_hint:1, limited:1, - unpacked:1, + unpacked:1, /* see also ignore_packed below */ boundary:1, parents:1; @@ -54,12 +55,24 @@ struct rev_info { /* Format info */ unsigned int shown_one:1, - abbrev_commit:1; + abbrev_commit:1, + relative_date:1; + + const char **ignore_packed; /* pretend objects in these are unpacked */ + int num_ignore_packed; + unsigned int abbrev; enum cmit_fmt commit_format; struct log_info *loginfo; int nr, total; const char *mime_boundary; + const char *message_id; + const char *ref_message_id; + const char *add_signoff; + const char *extra_headers; + + /* Filter by commit log message */ + struct grep_opt *grep_filter; /* special limits */ int max_count; @@ -82,8 +95,10 @@ struct rev_info { 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 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 struct commit *get_revision(struct rev_info *revs); @@ -96,9 +111,11 @@ struct name_path { const char *elem; }; -extern struct object_list **add_object(struct object *obj, - struct object_list **p, - struct name_path *path, - const char *name); +extern void add_object(struct object *obj, + struct object_array *p, + struct name_path *path, + const char *name); + +extern void add_pending_object(struct rev_info *revs, struct object *obj, const char *name); #endif