git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Git-SVN on Cygwin: svn+ssh good, https awkward

From
Eric Blake <ebb9@byu.net>
Date
Apr 23, 2009, 17:58 UTC
Message-ID
<loom.20090423T175124-165@post.gmane.org>
In-Reply-To
<op.usulh7a71e62zd@balu.cs.uni-paderborn.de>
Matthias Andree <matthias.andree <at> gmx.de> writes:
Show 6 quoted lines
> 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
Show 10 quoted lines
> 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
Previous: Matthias AndreeNext: Matthias Andree
Message 3 of 7 in “Git-SVN on Cygwin: svn+ssh good, https awkward”
  1. Matthias AndreeApr 23, 2009
  2. Matthias AndreeApr 23, 2009
  3. Eric BlakeApr 23, 2009
  4. Matthias AndreeApr 23, 2009
  5. Matthias AndreeApr 23, 2009
  6. Eric WongApr 23, 2009
  7. Matthias AndreeApr 24, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.