Re: Git-SVN on Cygwin: svn+ssh good, https awkward
From: Eric Blake <hidden>
Date: 2016-06-15 22:46:39
Matthias Andree <matthias.andree <at> gmx.de> writes:
3. UNDERLYING CYGWIN LIMITATIONS * unlink a file and subsequent creation of a new file in the same location is not supported. * "delete on close" (unlinking an open file) is supported.
These last two points are old information. I would first recommend that you try running the new cygwin 1.7 (still in beta), where unlink() semantics have been greatly improved (you can actually unlink() an in-use file and recreate a new file by the same name while the old handle is still open). http://cygwin.com/#beta-test
4. FIX SUGGESTIONS AND QUESTIONS Can we defer unlink()ing the tempfile until all handles to it are closed? Can we let complete and wait for all processes that hold handles to the tempfile.tmp file before attempting to create a new copy? Can we use unique tempfile names (timestamps, counter, random number generator) instead of the hardcoded "tempfile.tmp"? This is probably a good idea anyways to evade symlink attacks.
Although newer cygwin may fix your particular problem, this is not a bad suggestion for msysgit, so I suspect someone may be bothered enough by this to write a patch. I, however, will not be the one doing it. -- Eric Blake