提交 2e3710bd 编写于 作者: J Junio C Hamano

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
...@@ -10,7 +10,7 @@ SYNOPSIS ...@@ -10,7 +10,7 @@ SYNOPSIS
-------- --------
[verse] [verse]
'git commit-tree' <tree> [(-p <parent>)...] < changelog '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 DESCRIPTION
----------- -----------
......
...@@ -48,9 +48,6 @@ int cmd_commit_tree(int argc, const char **argv, const char *prefix) ...@@ -48,9 +48,6 @@ int cmd_commit_tree(int argc, const char **argv, const char *prefix)
if (argc < 2 || !strcmp(argv[1], "-h")) if (argc < 2 || !strcmp(argv[1], "-h"))
usage(commit_tree_usage); 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++) { for (i = 1; i < argc; i++) {
const char *arg = argv[i]; const char *arg = argv[i];
if (!strcmp(arg, "-p")) { if (!strcmp(arg, "-p")) {
......
...@@ -7,6 +7,9 @@ test_description='git commit-tree options test ...@@ -7,6 +7,9 @@ test_description='git commit-tree options test
This test checks that git commit-tree can create a specific commit This test checks that git commit-tree can create a specific commit
object by defining all environment variables that it understands. 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 . ./test-lib.sh
...@@ -42,4 +45,18 @@ test_expect_success \ ...@@ -42,4 +45,18 @@ test_expect_success \
'compare commit' \ 'compare commit' \
'test_cmp expected 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 test_done
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册