Subject: Re: git: problems in read-only trees

From: Holger Eitzenberger <[email-masked]>
Date: Thu, 04 Aug 2005 22:38:36 +0200

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