Hi,

On Wed, 12 Oct 2016, Junio C Hamano wrote:

> Johannes Sixt <j...@kdbg.org> writes:
> 
> > Can we please have the following change instead? I think it makes sense
> > to deviate from the usual conventions in a case like this.
> 
> You have at least two independent changes relative to Dscho's
> version.  
> 
>  (1) Show line breaks more prominently by avoiding "\n\n" and
>      breaking the string at "\n"; this matches the way how the
>      result would be displayed more closely to how the source looks
>      like.
> 
>  (2) Ignore the usual indentation rule and have messages start at
>      the left end of the source.
> 
> Which one are you saying "makes sense" to?  Both?
> 
> I guess both can be grouped together into one theme: match the way
> the final output and the source code look like.
> 
> If that is the motivation behind "makes sense", I'd prefer to see
> the change explained explicitly with that rationale in the log
> message.
> 
> Thanks.  I personally agree with that motivation (if the one I
> guessed above is your motivation, that is).

I agree with that motivation, but I decided to go about it in a way that
is more in line with the existing source code:

-- snipsnap --
diff --git a/sequencer.c b/sequencer.c
index 8e10bb5..1cf70f7 100644
--- a/sequencer.c
+++ b/sequencer.c
@@ -483,6 +483,20 @@ static char **read_author_script(void)
        return env;
 }
 
+static const char staged_changes_advice[] =
+N_("you have staged changes in your working tree\n"
+"If these changes are meant to be squashed into the previous commit, run:\n"
+"\n"
+"  git commit --amend %s\n"
+"\n"
+"If they are meant to go into a new commit, run:\n"
+"\n"
+"  git commit %s\n"
+"\n"
+"In both cases, once you're done, continue with:\n"
+"\n"
+"  git rebase --continue\n");
+
 /*
  * If we are cherry-pick, and if the merge did not result in
  * hand-editing, we will hit this commit and inherit the original
@@ -509,18 +523,7 @@ static int run_git_commit(const char *defmsg, struct 
replay_opts *opts,
                if (!env) {
                        const char *gpg_opt = gpg_sign_opt_quoted(opts);
 
-                       return error(_("you have staged changes in your "
-                                      "working tree. If these changes are "
-                                      "meant to be\n"
-                                      "squashed into the previous commit, "
-                                      "run:\n\n"
-                                      "  git commit --amend %s\n\n"
-                                      "If they are meant to go into a new "
-                                      "commit, run:\n\n"
-                                      "  git commit %s\n\n"
-                                      "In both cases, once you're done, "
-                                      "continue with:\n\n"
-                                      "  git rebase --continue\n"),
+                       return error(_(staged_changes_advice),
                                     gpg_opt, gpg_opt);
                }
        }

Reply via email to