diff options
author | Pierre Habouzit <madcoder@debian.org> | 2008-07-08 15:19:33 +0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2008-07-08 15:29:40 -0700 |
commit | 02e542206f26cf06817ec2e9ffecf4f416e8e332 (patch) | |
tree | 11e1a28dd4700be27f090faf22adf98afa0d73a8 /revision.h | |
parent | 8bb65883d164843d5bb7475281af09bae18ab22d (diff) | |
download | git-02e542206f26cf06817ec2e9ffecf4f416e8e332.tar.gz |
revisions: split handle_revision_opt() from setup_revisions()
Add two fields to struct rev_info:
- .def to store --default argument; and
- .show_merge 1-bit field.
handle_revision_opt() is able to deal with any revision option, and
consumes them, and leaves revision arguments or pseudo arguments
(like --all, --not, ...) in place.
For now setup_revisions() does a pass of handle_revision_opt() again
so that code not using it in a parse-opt parser still work the same.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'revision.h')
-rw-r--r-- | revision.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/revision.h b/revision.h index dcf08e089a..c44498e3b3 100644 --- a/revision.h +++ b/revision.h @@ -25,6 +25,7 @@ struct rev_info { /* Basic information */ const char *prefix; + const char *def; void *prune_data; unsigned int early_output; @@ -65,6 +66,7 @@ struct rev_info { /* Format info */ unsigned int shown_one:1, + show_merge:1, abbrev_commit:1, use_terminator:1, missing_newline:1; @@ -117,6 +119,8 @@ volatile show_early_output_fn_t show_early_output; 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_opt(struct rev_info *revs, int argc, const char **argv, + int *unkc, const char **unkv); extern int handle_revision_arg(const char *arg, struct rev_info *revs,int flags,int cant_be_filename); extern int prepare_revision_walk(struct rev_info *revs); |