# use GIT_DIR instead of /var/tmp

8 messages from 2006-01-05 to 2006-01-06. Participants: Alex Riesen, H. Peter Anvin, Linus Torvalds, Jon Nelson, Johannes Schindelin.
Thread: https://gitlist.dev/t/2977

## Alex Riesen, 2006-01-05 11:52

Subject: use GIT_DIR instead of /var/tmp
Message-ID: <81b0412b0601050352n386505bfjd40e515809e3c862@mail.gmail.com>
URL: https://gitlist.dev/e/81b0412b0601050352n386505bfjd40e515809e3c862%40mail.gmail.com

```
Not every system (will not one microsoft windows system) have /var/tmp,
whereas using GIT_DIR for random temporary files is more or less established.

Signed-off-by: Alex Riesen <raa.lkml@gmail.com>


Subject: [PATCH] use GIT_DIR instead of /var/tmp

Signed-off-by: Alex Riesen <raa.lkml@gmail.com>


---

 git-reset.sh |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

9ba3fa786e3de644a9395f99e69cede912f64571
diff --git a/git-reset.sh b/git-reset.sh
index eb44ee8..6c9e58a 100755
--- a/git-reset.sh
+++ b/git-reset.sh
@@ -3,7 +3,7 @@
 USAGE='[--mixed | --soft | --hard]  [<commit-ish>]'
 . git-sh-setup
 
-tmp=/var/tmp/reset.$$
+tmp=${GIT_DIR}/reset.$$
 trap 'rm -f $tmp-*' 0 1 2 3 15
 
 reset_type=--mixed
-- 
1.0.GIT

```

## H. Peter Anvin, 2006-01-05 16:38

Subject: Re: use GIT_DIR instead of /var/tmp
Message-ID: <43BD4B73.7010000@zytor.com>
URL: https://gitlist.dev/e/43BD4B73.7010000%40zytor.com
In-Reply-To: <81b0412b0601050352n386505bfjd40e515809e3c862@mail.gmail.com>

```
Alex Riesen wrote:
> Not every system (will not one microsoft windows system) have /var/tmp,
> whereas using GIT_DIR for random temporary files is more or less established.

Depends on what you're doing.  Only if you're writing to the repository.

Windows will usually have $TMP and/or $TEMP, a lot of Unix apps honour 
$TMP_DIR.

	-hpa

```

## Linus Torvalds, 2006-01-05 16:42

Subject: Re: use GIT_DIR instead of /var/tmp
Message-ID: <Pine.LNX.4.64.0601050840010.3169@g5.osdl.org>
URL: https://gitlist.dev/e/Pine.LNX.4.64.0601050840010.3169%40g5.osdl.org
In-Reply-To: <81b0412b0601050352n386505bfjd40e515809e3c862@mail.gmail.com>

```


On Thu, 5 Jan 2006, Alex Riesen wrote:
>
> Not every system (will not one microsoft windows system) have /var/tmp,
> whereas using GIT_DIR for random temporary files is more or less established.

Note that in this case it might be appropriate, but in general you should 
be careful. You may want to access a git directory without actually having 
write permissions to it. 

Of course, for "git reset" that's not an issue (since it needs write 
permissions anyway), but just in general.. git programs mostly use pipes 
to communicate, and temporary files are pretty rare, so we hopefully don't 
have that issue much, but let's make sure that things that just look at a 
repository can work even with a read-only repo.

		Linus

```

## Alex Riesen, 2006-01-05 16:47

Subject: Re: use GIT_DIR instead of /var/tmp
Message-ID: <81b0412b0601050847h1dcd5e81sd5eef3f03df6d1de@mail.gmail.com>
URL: https://gitlist.dev/e/81b0412b0601050847h1dcd5e81sd5eef3f03df6d1de%40mail.gmail.com
In-Reply-To: <43BD4B73.7010000@zytor.com>

```
On 1/5/06, H. Peter Anvin <hpa@zytor.com> wrote:
> > Not every system (will not one microsoft windows system) have /var/tmp,
> > whereas using GIT_DIR for random temporary files is more or less established.
>
> Depends on what you're doing.  Only if you're writing to the repository.
>
> Windows will usually have $TMP and/or $TEMP, a lot of Unix apps honour
> $TMP_DIR.

Well, it never had TMP/TEMP by default for me (though I'd expect from people
installing git to set the thing properly), and it is usually undefined
everywhere else.

```

## Jon Nelson, 2006-01-05 16:49

Subject: Re: use GIT_DIR instead of /var/tmp
Message-ID: <Pine.LNX.4.63.0601051048490.667@gheavc.wnzcbav.cig>
URL: https://gitlist.dev/e/Pine.LNX.4.63.0601051048490.667%40gheavc.wnzcbav.cig
In-Reply-To: <Pine.LNX.4.64.0601050840010.3169@g5.osdl.org>

```
On Thu, 5 Jan 2006, Linus Torvalds wrote:

> 
> 
> On Thu, 5 Jan 2006, Alex Riesen wrote:
> >
> > Not every system (will not one microsoft windows system) have /var/tmp,
> > whereas using GIT_DIR for random temporary files is more or less established.
> 
> Note that in this case it might be appropriate, but in general you should 
> be careful. You may want to access a git directory without actually having 
> write permissions to it. 
> 
> Of course, for "git reset" that's not an issue (since it needs write 
> permissions anyway), but just in general.. git programs mostly use pipes 
> to communicate, and temporary files are pretty rare, so we hopefully don't 
> have that issue much, but let's make sure that things that just look at a 
> repository can work even with a read-only repo.

Do you still need write access to $GIT_DIR if $GIT_INDEX_FILE is set to 
some place outside of $GIT_DIR?

--
Jon Nelson <jnelson-git@jamponi.net>

```

## H. Peter Anvin, 2006-01-05 17:07

Subject: Re: use GIT_DIR instead of /var/tmp
Message-ID: <43BD526F.2040300@zytor.com>
URL: https://gitlist.dev/e/43BD526F.2040300%40zytor.com
In-Reply-To: <81b0412b0601050847h1dcd5e81sd5eef3f03df6d1de@mail.gmail.com>

```
Alex Riesen wrote:
> On 1/5/06, H. Peter Anvin <hpa@zytor.com> wrote:
> 
>>>Not every system (will not one microsoft windows system) have /var/tmp,
>>>whereas using GIT_DIR for random temporary files is more or less established.
>>
>>Depends on what you're doing.  Only if you're writing to the repository.
>>
>>Windows will usually have $TMP and/or $TEMP, a lot of Unix apps honour
>>$TMP_DIR.
> 
> 
> Well, it never had TMP/TEMP by default for me (though I'd expect from people
> installing git to set the thing properly), and it is usually undefined
> everywhere else.

Well, for me it's set to

TEMP=C:\Documents and Settings\user\Local Settings\Temp

(except it's all in 8.3-mangled form)... and I sure as Hades didn't set 
it.  This in on XP SP2.  "Local Settings" is a hidden directory which 
seems to have stuff like the Internet Exploder cache in it.

	-hpa

```

## Alex Riesen, 2006-01-06 09:32

Subject: Re: use GIT_DIR instead of /var/tmp
Message-ID: <20060106093213.GA4268@steel.home>
URL: https://gitlist.dev/e/20060106093213.GA4268%40steel.home
In-Reply-To: <Pine.LNX.4.63.0601051048490.667@gheavc.wnzcbav.cig>

```
Jon Nelson, Thu, Jan 05, 2006 17:49:36 +0100:
> Do you still need write access to $GIT_DIR if $GIT_INDEX_FILE is set to 
> some place outside of $GIT_DIR?

yes, $GIT_DIR/refs/heads/ref-pointed-by-HEAD is updated by git-reset.

```

## Johannes Schindelin, 2006-01-06 10:00

Subject: Re: use GIT_DIR instead of /var/tmp
Message-ID: <Pine.LNX.4.63.0601061057470.19735@wbgn013.biozentrum.uni-wuerzburg.de>
URL: https://gitlist.dev/e/Pine.LNX.4.63.0601061057470.19735%40wbgn013.biozentrum.uni-wuerzburg.de
In-Reply-To: <20060106093213.GA4268@steel.home>

```
Hi,

On Fri, 6 Jan 2006, Alex Riesen wrote:

> Jon Nelson, Thu, Jan 05, 2006 17:49:36 +0100:
> > Do you still need write access to $GIT_DIR if $GIT_INDEX_FILE is set to 
> > some place outside of $GIT_DIR?
> 
> yes, $GIT_DIR/refs/heads/ref-pointed-by-HEAD is updated by git-reset.

In a strict sense, this means write access to $GIT_DIR/refs/heads/. In a 
shared setup, I have repositories where all developers are allowed to 
write to that folder, but only the repo maintainer (yours truly) is 
allowed to write to $GIT_DIR (which effectively means: nobody can write 
an index).

Maybe the safe method would be to introduce $GIT_TMP_DIR, with "/tmp/" 
being the default?

Ciao,
Dscho

```
