From: Phillip Wood <phillip.wood123@gmail.com>
To: Rohit Ashiwal <rohit.ashiwal265@gmail.com>
Cc: git@vger.kernel.org, newren@gmail.com, t.gummerer@gmail.com,
gitster@pobox.com, martin.agren@gmail.com
Subject: Re: [GSoC][PATCH v7 2/6] sequencer: add advice for revert
Date: Sat, 29 Jun 2019 15:05:36 +0100 [thread overview]
Message-ID: <5ae3461e-7c83-2eeb-552c-ffe838bb03b6@gmail.com> (raw)
In-Reply-To: <20190623200338.17144-3-rohit.ashiwal265@gmail.com>
Hi Rohit
On 23/06/2019 21:03, Rohit Ashiwal wrote:
> In the case of merge conflicts, while performing a revert, we are
> currently advised to use `git cherry-pick --<sequencer-options>`
> of which --continue is incompatible for continuing the revert.
I'm not sure why this says we cannot use --continue with revert, I think
it should work fine. Also below your new advice recommends `revert
--continue` as an option which contradicts this part of the commit message.
Oh do you mean `cherry-pick --abort` and `cherry-pick --quit` work with
a revert but `cherry-pick --continue` does not? If so that's a quirk of
the implementation that should be fixed. If that's the case I'm think
mentioning it just confuses the commit message. Just say the advice for
revert should say revert.
I'd also squash the first patch into this one so the new variable is
used when it is introduced
Best Wishes
Phillip
> Introduce a separate advice message for `git revert`. Also change
> the signature of `create_seq_dir` to handle which advice to display
> selectively.
>
> Signed-off-by: Rohit Ashiwal <rohit.ashiwal265@gmail.com>
> ---
> sequencer.c | 35 +++++++++++++++++++++++++++++------
> 1 file changed, 29 insertions(+), 6 deletions(-)
>
> diff --git a/sequencer.c b/sequencer.c
> index f88a97fb10..0ef2622a69 100644
> --- a/sequencer.c
> +++ b/sequencer.c
> @@ -2650,15 +2650,38 @@ static int walk_revs_populate_todo(struct todo_list *todo_list,
> return 0;
> }
>
> -static int create_seq_dir(void)
> +static int create_seq_dir(struct repository *r)
> {
> - if (file_exists(git_path_seq_dir())) {
> - error(_("a cherry-pick or revert is already in progress"));
> - advise(_("try \"git cherry-pick (--continue | --quit | --abort)\""));
> + enum replay_action action;
> + const char *in_progress_error = NULL;
> + const char *in_progress_advice = NULL;
> +
> + if (!sequencer_get_last_command(r, &action)) {
> + switch (action) {
> + case REPLAY_REVERT:
> + in_progress_error = _("revert is already in progress");
> + in_progress_advice =
> + _("try \"git revert (--continue | --abort | --quit)\"");
> + break;
> + case REPLAY_PICK:
> + in_progress_error = _("cherry-pick is already in progress");
> + in_progress_advice =
> + _("try \"git cherry-pick (--continue | --abort | --quit)\"");
> + break;
> + default:
> + BUG("unexpected action in create_seq_dir");
> + }
> + }
> + if (in_progress_error) {
> + error("%s", in_progress_error);
> + if (advice_sequencer_in_use)
> + advise("%s", in_progress_advice);
> return -1;
> - } else if (mkdir(git_path_seq_dir(), 0777) < 0)
> + }
> + if (mkdir(git_path_seq_dir(), 0777) < 0)
> return error_errno(_("could not create sequencer directory '%s'"),
> git_path_seq_dir());
> +
> return 0;
> }
>
> @@ -4237,7 +4260,7 @@ int sequencer_pick_revisions(struct repository *r,
> */
>
> if (walk_revs_populate_todo(&todo_list, opts) ||
> - create_seq_dir() < 0)
> + create_seq_dir(r) < 0)
> return -1;
> if (get_oid("HEAD", &oid) && (opts->action == REPLAY_REVERT))
> return error(_("can't revert as initial commit"));
>
next prev parent reply other threads:[~2019-06-29 14:05 UTC|newest]
Thread overview: 95+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-06-08 19:19 [GSoC][PATCH 0/3] Teach cherry-pick/revert to skip commits Rohit Ashiwal
2019-06-08 19:19 ` [GSoC][PATCH 1/3] sequencer: add advice for revert Rohit Ashiwal
2019-06-09 17:52 ` Phillip Wood
2019-06-10 5:13 ` Rohit Ashiwal
2019-06-10 10:39 ` Phillip Wood
2019-06-10 13:25 ` Rohit Ashiwal
2019-06-10 17:46 ` Phillip Wood
2019-06-10 16:34 ` Junio C Hamano
2019-06-08 19:19 ` [GSoC][PATCH 2/3] cherry-pick/revert: add --skip option Rohit Ashiwal
2019-06-09 8:37 ` Thomas Gummerer
2019-06-09 18:01 ` Phillip Wood
2019-06-10 5:57 ` Rohit Ashiwal
2019-06-10 10:40 ` Phillip Wood
2019-06-10 13:43 ` Rohit Ashiwal
2019-06-10 17:47 ` Phillip Wood
2019-06-08 19:19 ` [GSoC][PATCH 3/3] cherry-pick/revert: update hints Rohit Ashiwal
2019-06-09 8:42 ` Thomas Gummerer
2019-06-09 18:03 ` Phillip Wood
2019-06-10 5:28 ` Rohit Ashiwal
2019-06-10 10:40 ` Phillip Wood
2019-06-10 13:33 ` Rohit Ashiwal
2019-06-10 17:47 ` Phillip Wood
2019-06-09 9:02 ` [GSoC][PATCH 0/3] Teach cherry-pick/revert to skip commits Thomas Gummerer
2019-06-09 10:06 ` Rohit Ashiwal
2019-06-09 20:00 ` Thomas Gummerer
2019-06-11 7:31 ` [GSoC][PATCH v2 " Rohit Ashiwal
2019-06-11 7:31 ` [GSoC][PATCH v2 1/3] sequencer: add advice for revert Rohit Ashiwal
2019-06-11 21:25 ` Junio C Hamano
2019-06-11 7:31 ` [GSoC][PATCH v2 2/3] cherry-pick/revert: add --skip option Rohit Ashiwal
2019-06-12 13:31 ` Phillip Wood
2019-06-12 18:11 ` Junio C Hamano
2019-06-12 18:57 ` Phillip Wood
2019-06-11 7:31 ` [GSoC][PATCH v2 3/3] cherry-pick/revert: advise using --skip Rohit Ashiwal
2019-06-12 15:16 ` Phillip Wood
2019-06-13 4:05 ` [GSoC][PATCH v3 0/3] Teach cherry-pick/revert to skip commits Rohit Ashiwal
2019-06-13 4:05 ` [GSoC][PATCH v3 1/3] sequencer: add advice for revert Rohit Ashiwal
2019-06-13 17:45 ` Phillip Wood
2019-06-13 19:21 ` Martin Ågren
2019-06-13 20:59 ` Junio C Hamano
2019-06-14 3:44 ` Rohit Ashiwal
2019-06-14 3:43 ` Rohit Ashiwal
2019-06-13 4:05 ` [GSoC][PATCH v3 2/3] cherry-pick/revert: add --skip option Rohit Ashiwal
2019-06-13 17:56 ` Junio C Hamano
2019-06-13 19:57 ` Junio C Hamano
2019-06-14 3:48 ` Rohit Ashiwal
2019-06-14 3:45 ` Rohit Ashiwal
2019-06-14 15:58 ` Junio C Hamano
2019-06-16 7:03 ` Rohit Ashiwal
2019-06-13 17:59 ` Phillip Wood
2019-06-13 4:05 ` [GSoC][PATCH v3 3/3] cherry-pick/revert: advise using --skip Rohit Ashiwal
2019-06-16 8:20 ` [GSoC][PATCH v4 0/4] [GSoC][PATCH 0/3] Teach cherry-pick/revert to skip commits Rohit Ashiwal
2019-06-16 8:20 ` [GSoC][PATCH v4 1/4] sequencer: add advice for revert Rohit Ashiwal
2019-06-17 5:51 ` Thomas Gummerer
2019-06-16 8:20 ` [GSoC][PATCH v4 2/4] sequencer: rename reset_for_rollback to reset_merge Rohit Ashiwal
2019-06-16 8:20 ` [GSoC][PATCH v4 3/4] cherry-pick/revert: add --skip option Rohit Ashiwal
2019-06-17 8:30 ` Thomas Gummerer
2019-06-16 8:20 ` [GSoC][PATCH v4 4/4] cherry-pick/revert: advise using --skip Rohit Ashiwal
2019-06-17 8:39 ` [GSoC][PATCH v4 0/4] [GSoC][PATCH 0/3] Teach cherry-pick/revert to skip commits Thomas Gummerer
2019-06-18 17:06 ` [GSoC][PATCH v5 0/5] " Rohit Ashiwal
2019-06-18 17:06 ` [GSoC][PATCH v5 1/5] sequencer: add advice for revert Rohit Ashiwal
2019-06-18 17:06 ` [GSoC][PATCH v5 2/5] sequencer: rename reset_for_rollback to reset_merge Rohit Ashiwal
2019-06-18 17:06 ` [GSoC][PATCH v5 3/5] sequencer: use argv_array in reset_merge Rohit Ashiwal
2019-06-18 17:06 ` [GSoC][PATCH v5 4/5] cherry-pick/revert: add --skip option Rohit Ashiwal
2019-06-20 3:40 ` Junio C Hamano
2019-06-20 9:46 ` Rohit Ashiwal
2019-06-20 9:57 ` Phillip Wood
2019-06-20 20:09 ` Junio C Hamano
2019-06-20 10:02 ` Phillip Wood
2019-06-20 10:34 ` Rohit Ashiwal
2019-06-20 11:42 ` Phillip Wood
2019-06-21 7:47 ` Rohit Ashiwal
2019-06-18 17:06 ` [GSoC][PATCH v5 5/5] cherry-pick/revert: advise using --skip Rohit Ashiwal
2019-06-21 9:17 ` [GSoC][PATCH v6 0/5] Teach cherry-pick/revert to skip commits Rohit Ashiwal
2019-06-21 9:17 ` [GSoC][PATCH v6 1/5] sequencer: add advice for revert Rohit Ashiwal
2019-06-21 9:17 ` [GSoC][PATCH v6 2/5] sequencer: rename reset_for_rollback to reset_merge Rohit Ashiwal
2019-06-21 9:17 ` [GSoC][PATCH v6 3/5] sequencer: use argv_array in reset_merge Rohit Ashiwal
2019-06-21 9:17 ` [GSoC][PATCH v6 4/5] cherry-pick/revert: add --skip option Rohit Ashiwal
2019-06-21 9:18 ` [GSoC][PATCH v6 5/5] cherry-pick/revert: advise using --skip Rohit Ashiwal
2019-06-21 19:09 ` [GSoC][PATCH v6 0/5] Teach cherry-pick/revert to skip commits Junio C Hamano
2019-06-23 20:03 ` [GSoC][PATCH v7 0/6] " Rohit Ashiwal
2019-06-23 20:03 ` [GSoC][PATCH v7 1/6] advice: add sequencerInUse config variable Rohit Ashiwal
2019-06-25 9:18 ` Thomas Gummerer
2019-06-23 20:03 ` [GSoC][PATCH v7 2/6] sequencer: add advice for revert Rohit Ashiwal
2019-06-29 14:05 ` Phillip Wood [this message]
2019-06-23 20:03 ` [GSoC][PATCH v7 3/6] sequencer: rename reset_for_rollback to reset_merge Rohit Ashiwal
2019-06-23 20:03 ` [GSoC][PATCH v7 4/6] sequencer: use argv_array in reset_merge Rohit Ashiwal
2019-06-23 20:03 ` [GSoC][PATCH v7 5/6] cherry-pick/revert: add --skip option Rohit Ashiwal
2019-06-23 20:03 ` [GSoC][PATCH v7 6/6] cherry-pick/revert: advise using --skip Rohit Ashiwal
2019-07-02 9:11 ` [GSoC][PATCH v8 0/5] Teach cherry-pick/revert to skip commits Rohit Ashiwal
2019-07-02 9:11 ` [GSoC][PATCH v8 1/5] sequencer: add advice for revert Rohit Ashiwal
2019-07-02 9:11 ` [GSoC][PATCH v8 2/5] sequencer: rename reset_for_rollback to reset_merge Rohit Ashiwal
2019-07-02 9:11 ` [GSoC][PATCH v8 3/5] sequencer: use argv_array in reset_merge Rohit Ashiwal
2019-07-02 9:11 ` [GSoC][PATCH v8 4/5] cherry-pick/revert: add --skip option Rohit Ashiwal
2019-07-02 9:11 ` [GSoC][PATCH v8 5/5] cherry-pick/revert: advise using --skip Rohit Ashiwal
2019-07-02 15:26 ` [GSoC][PATCH v8 0/5] Teach cherry-pick/revert to skip commits Phillip Wood
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5ae3461e-7c83-2eeb-552c-ffe838bb03b6@gmail.com \
--to=phillip.wood123@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=martin.agren@gmail.com \
--cc=newren@gmail.com \
--cc=phillip.wood@dunelm.org.uk \
--cc=rohit.ashiwal265@gmail.com \
--cc=t.gummerer@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).