threads / discuss / 45970

Is it possible to use new conditional includes outside of git dir?

Subject: Is it possible to use new conditional includes outside of git dir?

## tl;dr

3 messages between May 15, 2017 and May 18, 2017.

replies: 2people: 2as markdown or json

Mihails Strasuns· May 15, 2017, 18:09 UTC · lore
Hello,

I was very excited to try out new conditional include feature but have quickly found out that it doesn't work with some of my custom scripts because of the following behaviour:

# .gitconfig [includeIf "gitdir:~/work/"] path = ~/.gitconfig.work [user] name1 = Someone

# .gitconfig.work [user] name2 = SomeoneElse $ cd ~/work; git config user.name1 # "Someone" $ cd ~/work ; git config user.name2 # <nothing>

I see that it matches current `git config` documentation - indeed, it mentions only matching on git directory and not arbitrary file path. I wonder though, if this limitation is intentional and what is the rationale behind it?

Thank you, Michael

Ævar Arnfjörð Bjarmason· May 15, 2017, 21:00 UTC · re: Mihails Strasuns · lore

Re: Is it possible to use new conditional includes outside of git dir?

On Mon, May 15, 2017 at 8:09 PM, Mihails Strasuns <mihails.strasuns@gmail.com> wrote:

Show 20 quoted lines
> I was very excited to try out new conditional include feature but have
> quickly found out that it doesn't work with some of my custom scripts
> because of the following behaviour:
>
> # .gitconfig
> [includeIf "gitdir:~/work/"]
> path = ~/.gitconfig.work
> [user]
> name1 = Someone
>
> # .gitconfig.work
> [user]
> name2 = SomeoneElse
> $ cd ~/work; git config user.name1 # "Someone"
> $ cd ~/work ; git config user.name2 # <nothing>
>
> I see that it matches current `git config` documentation - indeed, it
> mentions only matching on git directory and not arbitrary file path. I
> wonder though, if this limitation is intentional and what is the
> rationale behind it?

It's intentional, but in the "that's how this works" sense, not "we'll never add what you just asked for".

This came up on list last week: https://public-inbox.org/git/F55DC360-9C1E-45B9-B8BA-39E1001BD620@gmail.com/T/#u

So I'd like to ask you the same question I asked Raphael in that thread.
Mihails Strasuns· May 18, 2017, 11:50 UTC · re: Ævar Arnfjörð Bjarmason · lore

Re: Is it possible to use new conditional includes outside of git dir?

On 05/15/2017 11:00 PM, Ævar Arnfjörð Bjarmason wrote:
Show 7 quoted lines
> It's intentional, but in the "that's how this works" sense, not "we'll
> never add what you just asked for".
> 
> This came up on list last week:
> https://public-inbox.org/git/F55DC360-9C1E-45B9-B8BA-39E1001BD620@gmail.com/T/#u
> 
> So I'd like to ask you the same question I asked Raphael in that thread.

This came from the GitHub CLI tool I use (https://github.com/sociomantic-tsunami/git-hub) which stores own configuration in git config (i.e. `git config hub.oauthtoken`). Some of its command run outside of the repository context, for example `git hub clone` ensures creation of a personal fork before doing regular clone and thus needs access to the token.

Thus I hoped that I will be able to use new git functionality to distinguish between work and personal GitHub accounts same as it is done for name/email.

← back to recent threads