mirror of
https://github.com/git/git.git
synced 2024-10-30 05:47:53 +01:00
5ed75e2a3f
In case 'git cherry-pick -s <commit>' failed, the user had to use 'git commit -s' (i.e. state the -s option again), which is easy to forget about. Instead, write the signed-off-by line early, so plain 'git commit' will have the same result. Also update 'git commit -s', so that in case there is already a relevant Signed-off-by line before the Conflicts: line, it won't add one more at the end of the message. If there is no such line, then add it before the the Conflicts: line. Signed-off-by: Miklos Vajna <vmiklos@suse.cz> Signed-off-by: Junio C Hamano <gitster@pobox.com>
56 lines
1 KiB
C
56 lines
1 KiB
C
#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"
|
|
|
|
enum replay_action {
|
|
REPLAY_REVERT,
|
|
REPLAY_PICK
|
|
};
|
|
|
|
enum replay_subcommand {
|
|
REPLAY_NONE,
|
|
REPLAY_REMOVE_STATE,
|
|
REPLAY_CONTINUE,
|
|
REPLAY_ROLLBACK
|
|
};
|
|
|
|
struct replay_opts {
|
|
enum replay_action action;
|
|
enum replay_subcommand subcommand;
|
|
|
|
/* Boolean options */
|
|
int edit;
|
|
int record_origin;
|
|
int no_commit;
|
|
int signoff;
|
|
int allow_ff;
|
|
int allow_rerere_auto;
|
|
int allow_empty;
|
|
int allow_empty_message;
|
|
int keep_redundant_commits;
|
|
|
|
int mainline;
|
|
|
|
/* Merge strategy */
|
|
const char *strategy;
|
|
const char **xopts;
|
|
size_t xopts_nr, xopts_alloc;
|
|
|
|
/* Only used by REPLAY_NONE */
|
|
struct rev_info *revs;
|
|
};
|
|
|
|
/* Removes SEQ_DIR. */
|
|
extern void remove_sequencer_state(void);
|
|
|
|
int sequencer_pick_revisions(struct replay_opts *opts);
|
|
|
|
extern const char sign_off_header[];
|
|
|
|
void append_signoff(struct strbuf *msgbuf, int ignore_footer);
|
|
|
|
#endif
|