All of lore.kernel.org
 help / color / mirror / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: git@vger.kernel.org
Cc: Adam Monsen <haircut@gmail.com>
Subject: [PATCH 2/3] commit: do not trigger bogus "has templated message edited" check
Date: Fri, 30 Mar 2012 12:45:18 -0700	[thread overview]
Message-ID: <1333136719-12657-3-git-send-email-gitster@pobox.com> (raw)
In-Reply-To: <1333136719-12657-1-git-send-email-gitster@pobox.com>

When "-t template" and "-F msg" options are both given (or worse yet,
there is "commit.template" configuration but a message is given in some
other way), the documentation says that template is ignored.  However,
the "has the user edited the message?" check still used the contents of
the template file as the basis of the emptyness check.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
 builtin/commit.c  |    2 ++
 t/t7501-commit.sh |    6 ++++++
 2 files changed, 8 insertions(+)

diff --git a/builtin/commit.c b/builtin/commit.c
index eba1377..7141766 100644
--- a/builtin/commit.c
+++ b/builtin/commit.c
@@ -1049,6 +1049,8 @@ static int parse_and_validate_options(int argc, const char *argv[],
 		die(_("Only one of -c/-C/-F/--fixup can be used."));
 	if (message.len && f > 0)
 		die((_("Option -m cannot be combined with -c/-C/-F/--fixup.")));
+	if (f || message.len)
+		template_file = NULL;
 	if (edit_message)
 		use_message = edit_message;
 	if (amend && !use_message && !fixup_message)
diff --git a/t/t7501-commit.sh b/t/t7501-commit.sh
index 45446b1..e59cc4e 100755
--- a/t/t7501-commit.sh
+++ b/t/t7501-commit.sh
@@ -81,7 +81,13 @@ test_expect_success 'empty commit message' '
 	test_must_fail git commit -F msg -a
 '
 
+test_expect_success 'template "emptyness" check does not kick in with -F' '
+	git checkout HEAD file && echo >>file && git add file &&
+	git commit -t file -F file
+'
+
 test_expect_success 'setup: commit message from file' '
+	git checkout HEAD file && echo >>file && git add file &&
 	echo this is the commit message, coming from a file >msg &&
 	git commit -F msg -a
 '
-- 
1.7.10.rc3.55.g06e99

  parent reply	other threads:[~2012-03-30 19:45 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-29 17:57 [PATCH] git-commit doc: say -t requires editing commit message Adam Monsen
2012-03-29 18:09 ` Ivan Heffner
2012-03-29 23:04   ` [PATCH v2] git-commit.txt: clarify -t requires editing message Adam Monsen
2012-03-30  2:05     ` Junio C Hamano
2012-03-30  3:07       ` Adam Monsen
2012-03-30  3:52         ` Junio C Hamano
2012-03-30  4:53           ` Adam Monsen
2012-03-30  5:08             ` Junio C Hamano
2012-03-30  5:43               ` Adam Monsen
2012-03-30 18:17                 ` Junio C Hamano
2012-03-30 19:45                   ` [PATCH 0/3] "commit --template" fixes Junio C Hamano
2012-03-30 19:45                     ` [PATCH 1/3] t7501: test the right kind of breakage Junio C Hamano
2012-03-30 19:45                     ` Junio C Hamano [this message]
2012-03-30 19:45                     ` [PATCH 3/3] commit: rephrase the error when user did not touch templated log message Junio C Hamano
2012-03-31 19:28                     ` [PATCH 0/3] "commit --template" fixes Adam Monsen
2012-04-01 22:28                       ` Junio C Hamano
2012-04-03 17:11                         ` Adam Monsen
2012-04-03 21:55                           ` Junio C Hamano
2012-04-05 14:29                             ` Adam Monsen

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=1333136719-12657-3-git-send-email-gitster@pobox.com \
    --to=gitster@pobox.com \
    --cc=git@vger.kernel.org \
    --cc=haircut@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.