diff options
author | Junio C Hamano <gitster@pobox.com> | 2011-06-06 11:40:08 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2011-06-06 11:40:08 -0700 |
commit | 6c92972d7f5ab247a8cab5e4b88cb281bf201970 (patch) | |
tree | 2a5100a10d4b91a59dea75ef73184142479c8963 | |
parent | a6605d76cdad37ed3c55a7be4d2e0af0f4721bb2 (diff) | |
parent | 000f97bd11e94fa8ede7fcdb43f5633997fed672 (diff) | |
download | git-6c92972d7f5ab247a8cab5e4b88cb281bf201970.tar.gz git-6c92972d7f5ab247a8cab5e4b88cb281bf201970.tar.xz |
Merge branch 'bc/maint-status-z-to-use-porcelain'
* bc/maint-status-z-to-use-porcelain:
builtin/commit.c: set status_format _after_ option parsing
t7508: demonstrate status's failure to use --porcelain format with -z
Conflicts:
builtin/commit.c
-rw-r--r-- | builtin/commit.c | 7 | ||||
-rwxr-xr-x | t/t7508-status.sh | 7 |
2 files changed, 11 insertions, 3 deletions
diff --git a/builtin/commit.c b/builtin/commit.c index 5286432f3..e1af9b19f 100644 --- a/builtin/commit.c +++ b/builtin/commit.c @@ -1207,9 +1207,6 @@ int cmd_status(int argc, const char **argv, const char *prefix) if (argc == 2 && !strcmp(argv[1], "-h")) usage_with_options(builtin_status_usage, builtin_status_options); - if (null_termination && status_format == STATUS_FORMAT_LONG) - status_format = STATUS_FORMAT_PORCELAIN; - wt_status_prepare(&s); gitmodules_config(); git_config(git_status_config, &s); @@ -1217,6 +1214,10 @@ int cmd_status(int argc, const char **argv, const char *prefix) argc = parse_options(argc, argv, prefix, builtin_status_options, builtin_status_usage, 0); + + if (null_termination && status_format == STATUS_FORMAT_LONG) + status_format = STATUS_FORMAT_PORCELAIN; + handle_untracked_files_arg(&s); if (show_ignored_in_status) s.show_ignored_files = 1; diff --git a/t/t7508-status.sh b/t/t7508-status.sh index cd6e2c5e8..1fdfbd386 100755 --- a/t/t7508-status.sh +++ b/t/t7508-status.sh @@ -780,6 +780,13 @@ test_expect_success 'status -s submodule summary (clean submodule)' ' test_cmp expect output ' +test_expect_success 'status -z implies porcelain' ' + git status --porcelain | + perl -pe "s/\012/\000/g" >expect && + git status -z >output && + test_cmp expect output +' + cat >expect <<EOF # On branch master # Changes to be committed: |