summaryrefslogtreecommitdiff
path: root/builtin
diff options
context:
space:
mode:
authorAndreas Krey <a.krey@gmx.de>2016-12-02 22:15:13 (GMT)
committerJunio C Hamano <gitster@pobox.com>2016-12-05 20:41:06 (GMT)
commit319d835240b752b94ccb67f6515759824955937b (patch)
tree65508ce4b116e35dffa929b2137c08ab1ad41036 /builtin
parent0202c411edc25940cc381bf317badcdf67670be4 (diff)
downloadgit-319d835240b752b94ccb67f6515759824955937b.zip
git-319d835240b752b94ccb67f6515759824955937b.tar.gz
git-319d835240b752b94ccb67f6515759824955937b.tar.bz2
commit: make --only --allow-empty work without paths
--only is implied when paths are present, and required them unless --amend. But with --allow-empty it should be allowed as well - it is the only way to create an empty commit in the presence of staged changes. Signed-off-by: Andreas Krey <a.krey@gmx.de> Reviewed-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin')
-rw-r--r--builtin/commit.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/builtin/commit.c b/builtin/commit.c
index 77e3dc8..58b799c 100644
--- a/builtin/commit.c
+++ b/builtin/commit.c
@@ -1201,7 +1201,7 @@ static int parse_and_validate_options(int argc, const char *argv[],
if (also + only + all + interactive > 1)
die(_("Only one of --include/--only/--all/--interactive/--patch can be used."));
- if (argc == 0 && (also || (only && !amend)))
+ if (argc == 0 && (also || (only && !amend && !allow_empty)))
die(_("No paths with --include/--only does not make sense."));
if (argc == 0 && only && amend)
only_include_assumed = _("Clever... amending the last one with dirty index.");