summaryrefslogtreecommitdiff
path: root/t
diff options
context:
space:
mode:
authorLibravatar Victoria Dye <vdye@github.com>2022-03-23 18:18:00 +0000
committerLibravatar Junio C Hamano <gitster@pobox.com>2022-03-23 14:39:45 -0700
commit7cff6765fe5c1ce97f4afba9432c8aa5c5f877ba (patch)
tree236883a21a6b1293b197cfc72b485ce23a18d19a /t
parentreset: remove 'reset.quiet' config option (diff)
downloadtgif-7cff6765fe5c1ce97f4afba9432c8aa5c5f877ba.tar.xz
reset: remove 'reset.refresh' config option
Remove the 'reset.refresh' option, requiring that users explicitly specify '--no-refresh' if they want to skip refreshing the index. The 'reset.refresh' option was introduced in 101cee42dd (reset: introduce --[no-]refresh option to --mixed, 2022-03-11) as a replacement for the refresh-skipping behavior originally controlled by 'reset.quiet'. Although 'reset.refresh=false' functionally served the same purpose as 'reset.quiet=true', it exposed [1] the fact that the existence of a global "skip refresh" option could potentially cause problems for users. Allowing a global config option to avoid refreshing the index forces scripts using 'git reset --mixed' to defensively use '--refresh' if index refresh is expected; if that option is missing, behavior of a script could vary from user-to-user without explanation. Furthermore, globally disabling index refresh in 'reset --mixed' was initially devised as a passive performance improvement; since the introduction of the option, other changes have been made to Git (e.g., the sparse index) with a greater potential performance impact without sacrificing index correctness. Therefore, we can more aggressively err on the side of correctness and limit the cases of skipping index refresh to only when a user specifies the '--no-refresh' option. [1] https://lore.kernel.org/git/xmqqy2179o3c.fsf@gitster.g/ Signed-off-by: Victoria Dye <vdye@github.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't')
-rwxr-xr-xt/t7102-reset.sh14
1 files changed, 2 insertions, 12 deletions
diff --git a/t/t7102-reset.sh b/t/t7102-reset.sh
index 9e4c4deee3..22477f3a31 100755
--- a/t/t7102-reset.sh
+++ b/t/t7102-reset.sh
@@ -493,19 +493,9 @@ test_expect_success '--mixed refreshes the index' '
'
test_expect_success '--mixed --[no-]refresh sets refresh behavior' '
- # Verify that --[no-]refresh and `reset.refresh` control index refresh
-
- # Config setting
- test_reset_refreshes_index "-c reset.refresh=true" &&
- ! test_reset_refreshes_index "-c reset.refresh=false" &&
-
- # Command line option
+ # Verify that --[no-]refresh controls index refresh
test_reset_refreshes_index "" --refresh &&
- ! test_reset_refreshes_index "" --no-refresh &&
-
- # Command line option overrides config setting
- test_reset_refreshes_index "-c reset.refresh=false" --refresh &&
- ! test_reset_refreshes_index "-c reset.refresh=true" --no-refresh
+ ! test_reset_refreshes_index "" --no-refresh
'
test_expect_success '--mixed preserves skip-worktree' '