All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jonathan Nieder <jrnieder@gmail.com>
To: Ramkumar Ramachandra <artagnon@gmail.com>
Cc: git@vger.kernel.org, Christian Couder <chriscool@tuxfamily.org>,
	Martin von Zweigbergk <martin.von.zweigbergk@gmail.com>,
	Phil Hord <phil.hord@gmail.com>,
	Jay Soffian <jaysoffian@gmail.com>
Subject: [PATCH 3/3] revert: improve error message for cherry-pick during cherry-pick
Date: Tue, 22 Nov 2011 05:15:47 -0600	[thread overview]
Message-ID: <20111122111547.GD7399@elie.hsd1.il.comcast.net> (raw)
In-Reply-To: <20111122111207.GA7399@elie.hsd1.il.comcast.net>

In the spirit of v1.6.3.3~3^2 (refuse to merge during a merge,
2009-07-01), "git cherry-pick" refuses to start a new cherry-pick when
in the middle of an existing conflicted cherry-pick in the following
sequence:

 1. git cherry-pick HEAD..origin
 2. resolve conflicts
 3. git cherry-pick HEAD..origin (instead of "git cherry-pick
    --continue", by mistake)

Good.  However, the error message on attempting step 3 is more
convoluted than necessary:

  $ git cherry-pick HEAD..origin
  error: .git/sequencer already exists.
  error: A cherry-pick or revert is in progress.
  hint: Use --continue to continue the operation
  hint: or --quit to forget about it
  fatal: cherry-pick failed

Clarify by removing the redundant first "error:" message, simplifying
the advice, and using lower-case and no full stops to be consistent
with other commands that prefix their messages with "error:", so it
becomes

  error: a cherry-pick or revert is already in progress
  hint: try "git cherry-pick (--continue | --quit)"
  fatal: cherry-pick failed

The "fatal: cherry-pick failed" line seems unnecessary, too, but
that can be fixed some other day.

Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
 builtin/revert.c |   13 ++++++-------
 1 files changed, 6 insertions(+), 7 deletions(-)

diff --git a/builtin/revert.c b/builtin/revert.c
index 2346cafb..1d112e4c 100644
--- a/builtin/revert.c
+++ b/builtin/revert.c
@@ -846,8 +846,11 @@ static int create_seq_dir(void)
 {
 	const char *seq_dir = git_path(SEQ_DIR);
 
-	if (file_exists(seq_dir))
-		return error(_("%s already exists."), seq_dir);
+	if (file_exists(seq_dir)) {
+		error(_("a cherry-pick or revert is already in progress"));
+		advise(_("try \"git cherry-pick (--continue | --quit)\""));
+		return -1;
+	}
 	else if (mkdir(seq_dir, 0777) < 0)
 		die_errno(_("Could not create sequencer directory %s"), seq_dir);
 	return 0;
@@ -991,12 +994,8 @@ static int pick_revisions(struct replay_opts *opts)
 	 */
 
 	walk_revs_populate_todo(&todo_list, opts);
-	if (create_seq_dir() < 0) {
-		error(_("A cherry-pick or revert is in progress."));
-		advise(_("Use --continue to continue the operation"));
-		advise(_("or --quit to forget about it"));
+	if (create_seq_dir() < 0)
 		return -1;
-	}
 	if (get_sha1("HEAD", sha1)) {
 		if (opts->action == REVERT)
 			return error(_("Can't revert as initial commit"));
-- 
1.7.8.rc3

  parent reply	other threads:[~2011-11-22 11:15 UTC|newest]

Thread overview: 52+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-11-20  7:30 cherry-pick/revert error messages Jonathan Nieder
2011-11-20  8:02 ` Ramkumar Ramachandra
2011-11-20  9:46   ` [RFC/PATCH 0/3] " Jonathan Nieder
2011-11-20  9:48     ` [PATCH 1/3] revert: rename --reset option to --quit Jonathan Nieder
2011-11-21 20:36       ` Junio C Hamano
2011-11-21 22:35         ` Jakub Narebski
2011-11-21 22:43           ` Jonathan Nieder
2011-11-20  9:50     ` [PATCH 2/3] revert: rearrange pick_revisions() for clarity Jonathan Nieder
2011-11-20  9:51     ` [PATCH 3/3] revert: improve error message for cherry-pick during cherry-pick Jonathan Nieder
2011-11-22 11:12     ` [PATCH v2 0/3] Re: cherry-pick/revert error messages Jonathan Nieder
2011-11-22 11:14       ` [PATCH 1/3] revert: rename --reset option to --quit Jonathan Nieder
2011-11-22 11:15       ` [PATCH 2/3] revert: rearrange pick_revisions() for clarity Jonathan Nieder
2011-11-22 11:15       ` Jonathan Nieder [this message]
2011-11-22 11:17       ` [PATCH 4/3] revert: write REVERT_HEAD pseudoref during conflicted revert Jonathan Nieder
2011-11-22 21:40         ` Thiago Farina
2011-12-01  9:34         ` Ramkumar Ramachandra
2011-11-22 11:20       ` [PATCH 5/3] revert: introduce --abort to cancel a failed cherry-pick Jonathan Nieder
2011-11-23  0:43         ` Junio C Hamano
2011-11-23  1:27           ` Jonathan Nieder
2011-11-23  8:49             ` [PATCH] Fix revert --abort on Windows Johannes Sixt
2011-11-23 10:04               ` Jonathan Nieder
2011-11-23 10:21                 ` Johannes Sixt
2011-12-10 12:46                   ` [RFC/PATCH 0/7] some sequencer loose ends (Re: Fix revert --abort on Windows) Jonathan Nieder
2011-12-10 12:47                     ` [PATCH 1/7] revert: give --continue handling its own function Jonathan Nieder
2011-12-14 13:16                       ` Ramkumar Ramachandra
2011-12-10 12:49                     ` [PATCH 2/7] revert: allow cherry-pick --continue to commit before resuming Jonathan Nieder
2011-12-14 14:26                       ` Ramkumar Ramachandra
2011-12-14 16:48                         ` Jonathan Nieder
2011-12-10 12:58                     ` [PATCH 3/7] revert: pass around rev-list args in already-parsed form Jonathan Nieder
2011-12-14 14:51                       ` Ramkumar Ramachandra
2011-12-10 12:59                     ` [PATCH 4/7] revert: allow single-pick in the middle of cherry-pick sequence Jonathan Nieder
2011-12-14 15:48                       ` Ramkumar Ramachandra
2011-12-14 16:21                         ` Jonathan Nieder
2012-04-05 11:49                       ` Ævar Arnfjörð Bjarmason
2012-04-05 12:15                         ` Jonathan Nieder
2011-12-10 13:02                     ` [PATCH 5/7] revert: do not remove state until sequence is finished Jonathan Nieder
2011-12-14 16:02                       ` Ramkumar Ramachandra
2011-12-10 13:03                     ` [PATCH 6/7] Revert "reset: Make reset remove the sequencer state" Jonathan Nieder
2011-12-14 16:06                       ` Ramkumar Ramachandra
2011-12-10 13:06                     ` [PATCH 7/7] revert: stop creating and removing sequencer-old directory Jonathan Nieder
2011-12-14 16:10                       ` Ramkumar Ramachandra
2011-12-11 19:58                     ` [RFC/PATCH 0/7] some sequencer loose ends (Re: Fix revert --abort on Windows) Jonathan Nieder
2011-12-12  8:15                       ` Junio C Hamano
2011-12-12 21:31                     ` Junio C Hamano
2011-12-14  9:57                       ` Jonathan Nieder
2011-11-23 17:23               ` [PATCH] Fix revert --abort on Windows Alex Riesen
2011-11-30 22:52         ` [PATCH 5/3] revert: introduce --abort to cancel a failed cherry-pick Junio C Hamano
2011-11-22 11:20       ` [PATCH 6/3] revert: remove --reset compatibility option Jonathan Nieder
2011-11-22 21:49         ` Junio C Hamano
2011-11-22 23:11           ` Jonathan Nieder
2011-11-22 23:38             ` Junio C Hamano
2011-11-22 11:27       ` [PATCH v2 0/3] Re: cherry-pick/revert error messages Jonathan Nieder

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

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20111122111547.GD7399@elie.hsd1.il.comcast.net \
    --to=jrnieder@gmail.com \
    --cc=artagnon@gmail.com \
    --cc=chriscool@tuxfamily.org \
    --cc=git@vger.kernel.org \
    --cc=jaysoffian@gmail.com \
    --cc=martin.von.zweigbergk@gmail.com \
    --cc=phil.hord@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.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.