From: Holger Eitzenberger Date: Thu, 04 Aug 2005 20:38:36 GMT Subject: Re: git: problems in read-only trees Message-ID: <42F27CCC.5050103@my-eitzenberger.de> In-Reply-To: <20050804201125.GB24479@pasky.ji.cz> Petr Baudis wrote: >>-> cg-diff >>fatal: unable to create new cachefile >>fatal: unable to create temp-file >> >>It would be nice if there was at least a way to specify some TMPDIR >>instead of the current directory in such a situation. > This is a bug in git-diff-* (producing the second error message; the first > error message means failed git-update-cache --refresh but that isn't > fatal). Any reason why prep_temp_blob() works in . instead of $TMPDIR? I do not know about the first message (cachefile), but the 2nd one is trivial to fix. I implemented a function called git_mkstemp() (path.c and so in libgit) which places the tmpfiles in $TMPDIR and if it's not set in /tmp. The is close to what other programs do. There are other references to mkstemp() in git where one or two of them may use git_mkstemp() instead, but not in sha1_file.c, since it hardlinks it later on. /holger