From: Yakov Lerner Date: Sun, 16 Jul 2006 15:03:49 GMT Subject: Re: comparing file contents in is_exact_match? Message-ID: In-Reply-To: <87fyh1ncm0.fsf@mid.deneb.enyo.de> On 7/16/06, Florian Weimer wrote: > * Johannes Schindelin: > > > Hi, > > > > On Fri, 7 Jul 2006, Florian Weimer wrote: > > > >> - s->data = mmap(NULL, s->size, PROT_READ, MAP_PRIVATE, fd, 0); > >> + s->data = mmap(NULL, s->size, PROT_READ, MAP_SHARED, fd, 0); > > > > Be advised that this breaks setups with NO_MMAP, in particular most (all) > > cygwin setups I know of. > > Are these Cygwin setups running on top of the Windows 95 code base by > chance? Cygwin has mmap. But cygwin's mmap() not good enough for git. What happens is that git does rename() when target file has active mmap(). In cygwin, this makes rename() to fail. This is what makes cygwin's mmap unusable for git. (BTW for read-only git access, mmap() will work on cygwin, for what I saw. But attempts to modify index will break). Yakov