diff options
author | Junio C Hamano <gitster@pobox.com> | 2012-07-30 13:05:13 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2012-07-30 13:05:13 -0700 |
commit | 2e3710bdf945dbffd89c28bc6c12f7ee7f0f55a8 (patch) | |
tree | fdea44aea763a0dfa6c68f905101c892a2e65aad | |
parent | Merge branch 'jv/maint-no-ext-diff' into maint (diff) | |
parent | Revert "git-commit-tree(1): update synopsis" (diff) | |
download | tgif-2e3710bdf945dbffd89c28bc6c12f7ee7f0f55a8.tar.xz |
Merge branch 'kk/maint-commit-tree' into maint
"git commit-tree" learned a more natural "-p <parent> <tree>" order
of arguments long time ago, but recently forgot it by mistake.
* kk/maint-commit-tree:
Revert "git-commit-tree(1): update synopsis"
commit-tree: resurrect command line parsing updates
-rw-r--r-- | Documentation/git-commit-tree.txt | 2 | ||||
-rw-r--r-- | builtin/commit-tree.c | 3 | ||||
-rwxr-xr-x | t/t1100-commit-tree-options.sh | 17 |
3 files changed, 18 insertions, 4 deletions
diff --git a/Documentation/git-commit-tree.txt b/Documentation/git-commit-tree.txt index ff73286509..6d5a04c83b 100644 --- a/Documentation/git-commit-tree.txt +++ b/Documentation/git-commit-tree.txt @@ -10,7 +10,7 @@ SYNOPSIS -------- [verse] 'git commit-tree' <tree> [(-p <parent>)...] < changelog -'git commit-tree' <tree> [(-p <parent>)...] [(-m <message>)...] [(-F <file>)...] +'git commit-tree' [(-p <parent>)...] [(-m <message>)...] [(-F <file>)...] <tree> DESCRIPTION ----------- diff --git a/builtin/commit-tree.c b/builtin/commit-tree.c index 164b655df9..a0df12ce16 100644 --- a/builtin/commit-tree.c +++ b/builtin/commit-tree.c @@ -48,9 +48,6 @@ int cmd_commit_tree(int argc, const char **argv, const char *prefix) if (argc < 2 || !strcmp(argv[1], "-h")) usage(commit_tree_usage); - if (get_sha1(argv[1], tree_sha1)) - die("Not a valid object name %s", argv[1]); - for (i = 1; i < argc; i++) { const char *arg = argv[i]; if (!strcmp(arg, "-p")) { diff --git a/t/t1100-commit-tree-options.sh b/t/t1100-commit-tree-options.sh index c4414ff576..a3b77239f4 100755 --- a/t/t1100-commit-tree-options.sh +++ b/t/t1100-commit-tree-options.sh @@ -7,6 +7,9 @@ test_description='git commit-tree options test This test checks that git commit-tree can create a specific commit object by defining all environment variables that it understands. + +Also make sure that command line parser understands the normal +"flags first and then non flag arguments" command line. ' . ./test-lib.sh @@ -42,4 +45,18 @@ test_expect_success \ 'compare commit' \ 'test_cmp expected commit' + +test_expect_success 'flags and then non flags' ' + echo comment text | + git commit-tree $(cat treeid) >commitid && + echo comment text | + git commit-tree $(cat treeid) -p $(cat commitid) >childid-1 && + echo comment text | + git commit-tree -p $(cat commitid) $(cat treeid) >childid-2 && + test_cmp childid-1 childid-2 && + git commit-tree $(cat treeid) -m foo >childid-3 && + git commit-tree -m foo $(cat treeid) >childid-4 && + test_cmp childid-3 childid-4 +' + test_done |