Git rebase got 'unlink of file failed' error
I don't know if it applies in your situation, but I've just had a similar situation with 1.7.10.msysgit.1 (talking to a network share on an Ubuntu server). In my case, a failed merge had made several objects owned by root with permissions -r--rwSr--. A simple SSH login and
sudo chown steve: .git/*
fixed one problem (for my user - unless you're called steve, you'll need to change that to your username!), and
chmod -R 0755 .git/*
fixed the other.
Did you try with set GIT_ASK_YESNO=false
?
This Google group thread mentions it in the recent mingw evolutions:
Make use of the new environment variable
GIT_ASK_YESNO
to support the recently implemented fallback in caseunlink
,rename
orrmdir
fail for files in use on Windows.
What exact version of Git for windows are you using?
Note: msysgit setup is not the same than the "Git for Windows" setup, see also "Different between msysgit and cygwin + git ?")
git 2.8.4 (June 2016) does mention issue 755 which should also alleviate the issue (commit 2db0641):
Make sure temporary file handles are not inherited by child processes
See also Git 2.19 (Q3 2018): "Git - Unlink of file .idx and .pack failed (The only process owned handle to this file is git.exe)".