# Git config not expanding user home directories

5 messages from 2008-09-30 to 2008-10-01. Participants: Tom Lanyon, Andreas Ericsson, Jakub Narebski, Jeff King.
Thread: https://gitlist.dev/t/15721

## Tom Lanyon, 2008-09-30 10:46

Subject: Git config not expanding user home directories
Message-ID: <F90667E7-6B06-4B34-B655-3C42ED236D9A@netspot.com.au>
URL: https://gitlist.dev/e/F90667E7-6B06-4B34-B655-3C42ED236D9A%40netspot.com.au

```
Hi all,

Is it normal behavior that git (well at least git-svn) won't expand  
~user from .gitconfig?

I was trying to set the svn.authorsfile config key to  
~tom/.gitauthors; I received an error until changing it to read /home/ 
tom/.gitauthors.

Regards,
Tom

```

## Andreas Ericsson, 2008-09-30 10:49

Subject: Re: Git config not expanding user home directories
Message-ID: <48E2043A.4000501@op5.se>
URL: https://gitlist.dev/e/48E2043A.4000501%40op5.se
In-Reply-To: <F90667E7-6B06-4B34-B655-3C42ED236D9A@netspot.com.au>

```
Tom Lanyon wrote:
> Hi all,
> 
> Is it normal behavior that git (well at least git-svn) won't expand 
> ~user from .gitconfig?
> 

Yes. You could add a patch for that though. git-daemon does ~user
expansion since quite a long time back, so there's a function ready
for it. I'd do it by doing something like:

   git config --path section.key

so that scripts can get the user-expanded version as well. In-core
applications can call expand_path() or some such on their own, I
think.

-- 
Andreas Ericsson                   andreas.ericsson@op5.se
OP5 AB                             www.op5.se
Tel: +46 8-230225                  Fax: +46 8-230231

```

## Jakub Narebski, 2008-09-30 11:38

Subject: Re: Git config not expanding user home directories
Message-ID: <m33ajhsw24.fsf@localhost.localdomain>
URL: https://gitlist.dev/e/m33ajhsw24.fsf%40localhost.localdomain
In-Reply-To: <48E2043A.4000501@op5.se>

```
Andreas Ericsson <ae@op5.se> writes:

> Tom Lanyon wrote:
> > 
> > Is it normal behavior that git (well at least git-svn) won't expand
> > ~user from .gitconfig?
> >
> 
> Yes. You could add a patch for that though. git-daemon does ~user
> expansion since quite a long time back, so there's a function ready
> for it. I'd do it by doing something like:
> 
>    git config --path section.key
> 
> so that scripts can get the user-expanded version as well. In-core
> applications can call expand_path() or some such on their own, I
> think.

There was a patch send to git mailing list adding basic '~' support
(I think via $ENV{HOME}), and IIRC even ~user support. I don't know
what happened to those patches (check mailing list archive), but
most probably it was not accepted because it didn't provide a way
for scripts to use this functionality, for example via --path option.

-- 
Jakub Narebski
Poland
ShadeHawk on #git

```

## Jeff King, 2008-10-01 03:22

Subject: Re: Git config not expanding user home directories
Message-ID: <20081001032246.GB24513@coredump.intra.peff.net>
URL: https://gitlist.dev/e/20081001032246.GB24513%40coredump.intra.peff.net
In-Reply-To: <m33ajhsw24.fsf@localhost.localdomain>

```
On Tue, Sep 30, 2008 at 04:38:46AM -0700, Jakub Narebski wrote:

> There was a patch send to git mailing list adding basic '~' support
> (I think via $ENV{HOME}), and IIRC even ~user support. I don't know
> what happened to those patches (check mailing list archive), but
> most probably it was not accepted because it didn't provide a way
> for scripts to use this functionality, for example via --path option.

There were several rounds, and I thought it was shaping up, but then
no more rounds came. I assume that Karl lost interest (or perhaps we
nitpicked him to death), but I thought at the end of the thread Junio
laid out a plan for the next revision. I guess nobody cared enough about
the feature to implement it after that (though I think I found the final
version acceptable with a minor documentation tweak, I think Junio laid
out a cleaner approach).

The last patch is here, with one of the replies from Junio giving the
aforementioned plan:

  http://mid.gmane.org/quack.20080829T0229.lthhc94rwyr_-_@roar.cs.berkeley.edu

-Peff

```

## Andreas Ericsson, 2008-10-01 07:52

Subject: Re: Git config not expanding user home directories
Message-ID: <48E32C44.40708@op5.se>
URL: https://gitlist.dev/e/48E32C44.40708%40op5.se
In-Reply-To: <20081001032246.GB24513@coredump.intra.peff.net>

```
Jeff King wrote:
> On Tue, Sep 30, 2008 at 04:38:46AM -0700, Jakub Narebski wrote:
> 
>> There was a patch send to git mailing list adding basic '~' support
>> (I think via $ENV{HOME}), and IIRC even ~user support. I don't know
>> what happened to those patches (check mailing list archive), but
>> most probably it was not accepted because it didn't provide a way
>> for scripts to use this functionality, for example via --path option.
> 
> There were several rounds, and I thought it was shaping up, but then
> no more rounds came. I assume that Karl lost interest (or perhaps we
> nitpicked him to death), but I thought at the end of the thread Junio
> laid out a plan for the next revision. I guess nobody cared enough about
> the feature to implement it after that (though I think I found the final
> version acceptable with a minor documentation tweak, I think Junio laid
> out a cleaner approach).
> 
> The last patch is here, with one of the replies from Junio giving the
> aforementioned plan:
> 
>   http://mid.gmane.org/quack.20080829T0229.lthhc94rwyr_-_@roar.cs.berkeley.edu
> 

That looks roughly like the way I'd have done it. I'll see if I can find
the time to polish it up a bit.

-- 
Andreas Ericsson                   andreas.ericsson@op5.se
OP5 AB                             www.op5.se
Tel: +46 8-230225                  Fax: +46 8-230231

```
