diff options
Diffstat (limited to 'sequencer.h')
-rw-r--r-- | sequencer.h | 39 |
1 files changed, 23 insertions, 16 deletions
diff --git a/sequencer.h b/sequencer.h index 5ed5cb1d97..81f6d7d393 100644 --- a/sequencer.h +++ b/sequencer.h @@ -1,28 +1,18 @@ #ifndef SEQUENCER_H #define SEQUENCER_H -#define SEQ_DIR "sequencer" -#define SEQ_HEAD_FILE "sequencer/head" -#define SEQ_TODO_FILE "sequencer/todo" -#define SEQ_OPTS_FILE "sequencer/opts" +const char *git_path_seq_dir(void); #define APPEND_SIGNOFF_DEDUP (1u << 0) enum replay_action { REPLAY_REVERT, - REPLAY_PICK -}; - -enum replay_subcommand { - REPLAY_NONE, - REPLAY_REMOVE_STATE, - REPLAY_CONTINUE, - REPLAY_ROLLBACK + REPLAY_PICK, + REPLAY_INTERACTIVE_REBASE }; struct replay_opts { enum replay_action action; - enum replay_subcommand subcommand; /* Boolean options */ int edit; @@ -34,21 +24,38 @@ struct replay_opts { int allow_empty; int allow_empty_message; int keep_redundant_commits; + int verbose; int mainline; - const char *gpg_sign; + char *gpg_sign; /* Merge strategy */ - const char *strategy; - const char **xopts; + char *strategy; + char **xopts; size_t xopts_nr, xopts_alloc; /* Only used by REPLAY_NONE */ struct rev_info *revs; }; +#define REPLAY_OPTS_INIT { -1 } int sequencer_pick_revisions(struct replay_opts *opts); +int sequencer_continue(struct replay_opts *opts); +int sequencer_rollback(struct replay_opts *opts); +int sequencer_remove_state(struct replay_opts *opts); + +#define TODO_LIST_KEEP_EMPTY (1U << 0) +#define TODO_LIST_SHORTEN_IDS (1U << 1) +#define TODO_LIST_ABBREVIATE_CMDS (1U << 2) +int sequencer_make_script(FILE *out, int argc, const char **argv, + unsigned flags); + +int sequencer_add_exec_commands(const char *command); +int transform_todos(unsigned flags); +int check_todo_list(void); +int skip_unnecessary_picks(void); +int rearrange_squash(void); extern const char sign_off_header[]; |