diff options
author | Nguyễn Thái Ngọc Duy <pclouds@gmail.com> | 2010-08-16 10:36:12 +1000 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2010-08-15 19:56:10 -0700 |
commit | d1ea896290629185dc0bf4efa3469b410bd41313 (patch) | |
tree | ec3be47a2afe45ac6c845c22d71fd63c2b13fd91 | |
parent | ff38d1a9953b3bce7741f8f962c5e067fda2d9ea (diff) | |
download | git-d1ea896290629185dc0bf4efa3469b410bd41313.tar.gz |
apply: run setup_git_directory_gently() sooner
As v1.7.2~16^2 (2010-07-14) explains, without this change,
“git --paginate apply” can ignore the repository-local
“[core] pager” configuration.
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | builtin/apply.c | 6 | ||||
-rw-r--r-- | git.c | 2 | ||||
-rwxr-xr-x | t/t7006-pager.sh | 3 |
3 files changed, 7 insertions, 4 deletions
diff --git a/builtin/apply.c b/builtin/apply.c index 12ef9ea8af..f005ba1e89 100644 --- a/builtin/apply.c +++ b/builtin/apply.c @@ -3607,11 +3607,11 @@ static int option_parse_directory(const struct option *opt, return 0; } -int cmd_apply(int argc, const char **argv, const char *unused_prefix) +int cmd_apply(int argc, const char **argv, const char *prefix_) { int i; int errs = 0; - int is_not_gitdir; + int is_not_gitdir = !startup_info->have_repository; int binary; int force_apply = 0; @@ -3684,7 +3684,7 @@ int cmd_apply(int argc, const char **argv, const char *unused_prefix) OPT_END() }; - prefix = setup_git_directory_gently(&is_not_gitdir); + prefix = prefix_; prefix_length = prefix ? strlen(prefix) : 0; git_config(git_apply_config, NULL); if (apply_default_whitespace) @@ -301,7 +301,7 @@ static void handle_internal_command(int argc, const char **argv) { "add", cmd_add, RUN_SETUP | NEED_WORK_TREE }, { "stage", cmd_add, RUN_SETUP | NEED_WORK_TREE }, { "annotate", cmd_annotate, RUN_SETUP }, - { "apply", cmd_apply }, + { "apply", cmd_apply, RUN_SETUP_GENTLY }, { "archive", cmd_archive }, { "bisect--helper", cmd_bisect__helper, RUN_SETUP | NEED_WORK_TREE }, { "blame", cmd_blame, RUN_SETUP }, diff --git a/t/t7006-pager.sh b/t/t7006-pager.sh index bb9533581e..6c86d7035f 100755 --- a/t/t7006-pager.sh +++ b/t/t7006-pager.sh @@ -391,4 +391,7 @@ test_no_local_config_subdir expect_success 'git shortlog' test_default_pager expect_success 'git -p shortlog' test_core_pager_subdir expect_success 'git -p shortlog' +test_core_pager_subdir expect_success test_must_fail \ + 'git -p apply </dev/null' + test_done |