diff options
author | Jonathan Nieder <jrnieder@gmail.com> | 2011-12-10 06:47:36 -0600 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2011-12-12 13:06:36 -0800 |
commit | 1df9bf46d656970d0db254cb7faab0d0505802e0 (patch) | |
tree | 11c24dbb4c87005edef7550dc170068163d56cd1 | |
parent | b15aa973b296ca36ae39592491bcb02944ac0f7a (diff) | |
download | git-1df9bf46d656970d0db254cb7faab0d0505802e0.tar.gz git-1df9bf46d656970d0db254cb7faab0d0505802e0.tar.xz |
revert: give --continue handling its own function
This makes pick_revisions() a little shorter and easier to read
straight through.
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | builtin/revert.c | 28 |
1 files changed, 17 insertions, 11 deletions
diff --git a/builtin/revert.c b/builtin/revert.c index 1ea525c10..9f6c85c1a 100644 --- a/builtin/revert.c +++ b/builtin/revert.c @@ -1038,6 +1038,21 @@ static int pick_commits(struct commit_list *todo_list, struct replay_opts *opts) return 0; } +static int sequencer_continue(struct replay_opts *opts) +{ + struct commit_list *todo_list = NULL; + + if (!file_exists(git_path(SEQ_TODO_FILE))) + return error(_("No %s in progress"), action_name(opts)); + read_populate_opts(&opts); + read_populate_todo(&todo_list, opts); + + /* Verify that the conflict has been resolved */ + if (!index_differs_from("HEAD", 0)) + todo_list = todo_list->next; + return pick_commits(todo_list, opts); +} + static int pick_revisions(struct replay_opts *opts) { struct commit_list *todo_list = NULL; @@ -1056,17 +1071,8 @@ static int pick_revisions(struct replay_opts *opts) } if (opts->subcommand == REPLAY_ROLLBACK) return sequencer_rollback(opts); - if (opts->subcommand == REPLAY_CONTINUE) { - if (!file_exists(git_path(SEQ_TODO_FILE))) - return error(_("No %s in progress"), action_name(opts)); - read_populate_opts(&opts); - read_populate_todo(&todo_list, opts); - - /* Verify that the conflict has been resolved */ - if (!index_differs_from("HEAD", 0)) - todo_list = todo_list->next; - return pick_commits(todo_list, opts); - } + if (opts->subcommand == REPLAY_CONTINUE) + return sequencer_continue(opts); /* * Start a new cherry-pick/ revert sequence; but |