pr-1008/dscho/fix-rmdir-with-symlinks-on-windows-v1
tagged this
29 Jul 19:21
From: Johannes Schindelin <johannes.schindelin@gmx.de> When performing a rebase, rmdir() is called on the folder .git/logs. On Unix rmdir() exits without deleting anything in case .git/logs is a symbolic link but the equivalent functions on Windows (_rmdir, _wrmdir and RemoveDirectoryW) do not behave the same and remove the folder if it is symlinked even if it is not empty. This creates issues when folders in .git/ are symlinks which is especially the case when git-repo[1] is used. This commit updates mingw_rmdir() so that its behavior is the same as Linux rmdir() in case of symbolic links. This fixes https://github.com/git-for-windows/git/issues/2967 [1]: git-repo is a python tool built on top of Git which helps manage many Git repositories. It stores all the .git/ folders in a central place by taking advantage of symbolic links. More information: https://gerrit.googlesource.com/git-repo/ Signed-off-by: Thomas Bétous <tomspycell@gmail.com> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Submitted-As: https://lore.kernel.org/git/pull.1008.git.1627586493659.gitgitgadget@gmail.com
Assets 2
-
2021-07-29T19:21:33Z -
2021-07-29T19:21:33Z -