summaryrefslogtreecommitdiff
path: root/compat/mmap.c
diff options
context:
space:
mode:
authorLibravatar Elijah Newren <newren@gmail.com>2021-12-09 05:08:25 +0000
committerLibravatar Junio C Hamano <gitster@pobox.com>2021-12-09 13:33:12 -0800
commit8a0d52dfd870af50b9c28baf66347f5eaaf14e6e (patch)
treec5ff8a86a834b155d31f921ef07c4d160b2423bc /compat/mmap.c
parentGit 2.34 (diff)
downloadtgif-8a0d52dfd870af50b9c28baf66347f5eaaf14e6e.tar.xz
t2501: add various tests for removing the current working directory
Numerous commands will remove directories left empty as a "convenience" after removing files within them. That is normally fine, but removing the current working directory can be rather inconvenient since it can cause confusion for the user when they run subsequent commands. For example, after one git process has removed the current working directory, git status/log/diff will all abort with the message: fatal: Unable to read current working directory: No such file or directory We also have code paths that, when a file needs to be placed where a directory is (due to e.g. checkout, merge, reset, whatever), will check if this is okay and error out if not. These rules include: * all tracked files under that directory are intended to be removed by the operation * none of the tracked files under that directory have uncommitted modification * there are no untracked files under that directory However, if we end up remove the current working directory, we can cause user confusion when they run subsequent commands, so we would prefer if there was a fourth rule added to this list: avoid removing the current working directory. Since there are several code paths that can result in the current working directory being removed, add several tests of various different codepaths. To make it clearer what the difference between the current behavior and the behavior at the end of the series, code both of them into the tests and have the appropriate behavior be selected by a flag. Subsequent commits will toggle the flag from current to desired behavior. Also add a few tests suggested during the review of earlier rounds of this patch series. Acked-by: Derrick Stolee <stolee@gmail.com> Acked-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Elijah Newren <newren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'compat/mmap.c')
0 files changed, 0 insertions, 0 deletions