Re: [PATCH v6 05/15] sequencer: introduce the `merge` command
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Apr 14, 2018, 00:51 UTC
- Message-ID
- <nycvar.QRO.7.76.6.1804140248110.234@ZVAVAG-6OXH6DA.rhebcr.pbec.zvpebfbsg.pbz>
- In-Reply-To
- <85232331-97a0-7989-e095-854ed962c7a0@talktalk.net>
Hi Phillip,
On Fri, 13 Apr 2018, Phillip Wood wrote:
Show 11 quoted lines
> On 13/04/18 11:12, Phillip Wood wrote:
> > @@ -3030,7 +3029,8 @@ static int pick_commits(struct todo_list *todo_list, struct replay_opts *opts)
> > return error(_("unknown command %d"), item->command);
> >
> > if (res < 0 && (item->command == TODO_LABEL ||
> > - item->command == TODO_RESET)) {
> > + item->command == TODO_RESET ||
> > + item->command == TODO_MERGE)) {
>
> Unfortunately it's not as simple as that - we only want to reschedule if
> merge_recursive() fails, not if run_git_commit() does.Correct. How about introducing a flag `reschedule` that is passed to do_label(), do_reset() and do_merge()?
Seeing as do_reset() and do_merge() already have a replay_opts parameter, we could add a field `needs_rescheduling` and pass the replay_opts also to do_label().
Ciao, Dscho