summaryrefslogtreecommitdiff
path: root/t/t7500-commit-template-squash-signoff.sh
diff options
context:
space:
mode:
authorHeba Waly <heba.waly@gmail.com>2019-12-17 09:17:22 (GMT)
committerJunio C Hamano <gitster@pobox.com>2019-12-19 19:58:08 (GMT)
commit5c4f55f1f62b64f530bd135e5b248ceba7b95708 (patch)
treeaa3a32da51b1a5feafaf4a22d994afc44b79b50c /t/t7500-commit-template-squash-signoff.sh
parent53a06cf39b756eddfe4a2a34da93e3d04eb7b728 (diff)
downloadgit-5c4f55f1f62b64f530bd135e5b248ceba7b95708.zip
git-5c4f55f1f62b64f530bd135e5b248ceba7b95708.tar.gz
git-5c4f55f1f62b64f530bd135e5b248ceba7b95708.tar.bz2
commit: honor advice.statusHints when rejecting an empty commit
In ea9882bfc4 (commit: disable status hints when writing to COMMIT_EDITMSG, 2013-09-12) the intent was to disable status hints when writing to COMMIT_EDITMSG, because giving the hints in the "git status" like output in the commit message template are too late to be useful (they say things like "'git add' to stage", but that is only possible after aborting the current "git commit" session). But there is one case that the hints can be useful: When the current attempt to commit is rejected because no change is recorded in the index. The message is given and "git commit" errors out, so the hints can immediately be followed by the user. Teach the codepath to honor the configuration variable. Signed-off-by: Heba Waly <heba.waly@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t7500-commit-template-squash-signoff.sh')
-rwxr-xr-xt/t7500-commit-template-squash-signoff.sh9
1 files changed, 9 insertions, 0 deletions
diff --git a/t/t7500-commit-template-squash-signoff.sh b/t/t7500-commit-template-squash-signoff.sh
index 46a5cd4..6d19ece 100755
--- a/t/t7500-commit-template-squash-signoff.sh
+++ b/t/t7500-commit-template-squash-signoff.sh
@@ -382,4 +382,13 @@ test_expect_success 'check commit with unstaged rename and copy' '
)
'
+test_expect_success 'commit without staging files fails and displays hints' '
+ echo "initial" >file &&
+ git add file &&
+ git commit -m initial &&
+ echo "changes" >>file &&
+ test_must_fail git commit -m update >actual &&
+ test_i18ngrep "no changes added to commit (use \"git add\" and/or \"git commit -a\")" actual
+'
+
test_done