Chris Webb <ch...@arachsys.com> writes: > In fact, we even fail to start the editor if --allow-empty-message is > explicitly provided: > > $ git commit --allow-empty --allow-empty-message -m '' > $ git commit --amend --allow-empty-message > fatal: commit has empty message > > Assuming this isn't intentional for some reason I don't understand, I think > this is the correct tiny fix? make test succeeds fine both before and after.
Yeah, it is a "bug" that exists only because nobody sane uses empty message commits, let alone tries to amend such commits, hence went unnoticed for a long time. The patch looks sane; if we want to keep this as a feature or a bugfix, we may want to pretect it with a new test, though. Thanks. > -- >8 -- > Subject: [PATCH] Allow edit of empty message with commit --amend > > If git commit --amend is used on a commit with an empty message, it fails > unless -m is given, whether or not --allow-empty-message is specified. > > Instead, allow it to proceed to the editor with an empty commit message. > Unless --allow-empty-message is in force, it will still abort later if an > empty message is saved from the editor. (That check was already present > and necessary to prevent a non-empty commit message being edited to an > empty one.) > > Signed-off-by: Chris Webb <ch...@arachsys.com> > --- > builtin/commit.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/builtin/commit.c b/builtin/commit.c > index f43eaaf..6515da2 100644 > --- a/builtin/commit.c > +++ b/builtin/commit.c > @@ -640,7 +640,7 @@ static int prepare_to_commit(const char *index_file, > const char *prefix, > hook_arg1 = "message"; > } else if (use_message) { > buffer = strstr(use_message_buffer, "\n\n"); > - if (!buffer || buffer[2] == '\0') > + if (!use_editor && (!buffer || buffer[2] == '\0')) > die(_("commit has empty message")); > strbuf_add(&sb, buffer + 2, strlen(buffer + 2)); > hook_arg1 = "commit"; -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html