Subject: Re: [PATCH/RFC] rebase: make resolve message clearer for inexperienced users

From: Junio C Hamano <[email-masked]>
Date: Mon, 10 Jul 2017 09:31:51 -0700

William Duclot <[email-masked]> writes:

> diff --git a/git-rebase.sh b/git-rebase.sh
> index 2cf73b88e..50457f687 100755
> --- a/git-rebase.sh
> +++ b/git-rebase.sh
> @@ -55,9 +55,10 @@ LF='
>  '
>  ok_to_skip_pre_rebase=
>  resolvemsg="
> -$(gettext 'When you have resolved this problem, run "git rebase --continue".
> -If you prefer to skip this patch, run "git rebase --skip" instead.
> -To check out the original branch and stop rebasing, run "git rebase --abort".')
> +$(gettext 'Resolve this conflict manually, mark it as resolved with "git add <conflicted_file>",
> +then run "git rebase --continue".
> +You can instead skip this commit: run "git rebase --skip".
> +To stop the whole rebasing and get back to your pre-rebase state, run "git rebase --abort".')
>  "

I find the updated one easier to follow in general.
Disecting the phrases in the above:

 - The original said "When you have resolved this problem", without
   giving a guidance how to resolve, and without saying what the
   problem is.  The updated one says "conflict" to clarify the
   "problem", and suggests "git add" as the tool to use after a
   manual resolition.  

   Modulo that there are cases where "git rm" is the right tool, the
   updated one is strict improvement.

 - The original said "If you prefer to skip" and the updated one
   says "You can instead skip".  Neither gives any guidance to
   decide when it is the right thing to skip, but probably that is
   not needed.  The updated one is shorter, which is a plus ;-)

 - The original said "to check out the original branch and stop
   rebasing", and the updated one says "to stop and get back to",
   which is in a more logical order.  

   "the whole rebasing" used as a noun feels something is missing
   there, though.  I wonder if "To get back to the state before you
   started 'rebase -i', run 'git rebase --abort'" is sufficient,
   without saying anything further about abandoning the rebase in
   progress (i.e. "and stop rebasing" or "stop the whole rebasing").

Thanks.