On Thu, Apr 04, 2013 at 03:01:36PM +0000, Pyeron, Jason J CTR (US) wrote: > I am having trouble when the .git folder is on a network share, given the below where should I start on my debugging? > [...] > jason.pyeron@localhost //server/share/dir/subdir/test > $ git add test.txt > > jason.pyeron@localhost //server/share/dir/subdir/test > $ git commit -m test > error: unable to find 8b7323820a21ebd1360e27262b3c61283c266c23 > fatal: 8b7323820a21ebd1360e27262b3c61283c266c23 is not a valid object Hmm. That message probably comes from: static int sha1_loose_object_info(const unsigned char *sha1, unsigned long *sizep) { [...] map = map_sha1_file(sha1, &mapsize); if (!map) return error("unable to find %s", sha1_to_hex(sha1)); So we have found the object and know that it is loose, but then mmap-ing it fails. My guess is that your system does not support mmap across network shares (whether this is an OS issue or a cygwin limitation, I don't know). You could confirm it by running your "git commit" under strace, which I expect would show mmap returning -ENODEV or similar. You can work around it by compiling git with NO_MMAP=1. You might also try msysgit rather than cygwin, which seems to have its own win32 mmap compatibility layer. Finally, I suspect we could include our emulate-mmap-with-pread compatibility wrapper all the time, and drop back to it automatically at run-time when we see ENODEV or a similar error return from mmap. -Peff -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html