# GIT_ONE_FILESYSTEM inclusion?

14 messages from 2010-03-23 to 2010-03-28. Participants: Lars Damerow, Alex Riesen, Johannes Sixt, Matthieu Moy, Junio C Hamano, David Aguilar, Jeff King.
Thread: https://gitlist.dev/t/23156

## Lars Damerow, 2010-03-23 23:20

Subject: GIT_ONE_FILESYSTEM inclusion?
Message-ID: <20100323232055.GV7038@pixar.com>
URL: https://gitlist.dev/e/20100323232055.GV7038%40pixar.com

```
Hi all,

Just wondering if anyone has any further comments or suggestions for the
GIT_ONE_FILESYSTEM patches I posted. See here for context:

    http://thread.gmane.org/gmane.comp.version-control.git/142436

If it looks good I'd love to have it considered for inclusion.

Thanks!
-lars

--
lars r. damerow :: button pusher :: pixar animation studios

```

## Alex Riesen, 2010-03-24 09:29

Subject: Re: GIT_ONE_FILESYSTEM inclusion?
Message-ID: <81b0412b1003240229l6f7eaa18l563c3d7ba0cf6cc5@mail.gmail.com>
URL: https://gitlist.dev/e/81b0412b1003240229l6f7eaa18l563c3d7ba0cf6cc5%40mail.gmail.com
In-Reply-To: <20100323232055.GV7038@pixar.com>

```
On Wed, Mar 24, 2010 at 00:20, Lars Damerow <lars@pixar.com> wrote:
> Just wondering if anyone has any further comments or suggestions for the
> GIT_ONE_FILESYSTEM patches I posted. See here for context:
>
>    http://thread.gmane.org/gmane.comp.version-control.git/142436
>
> If it looks good I'd love to have it considered for inclusion.

Have considered making it an option to git wrapper as suggested
(-x/--one-filesystem)?
And while at it, how about making it a config option? (i.e. core.oneFilesystem?)

```

## Johannes Sixt, 2010-03-24 09:35

Subject: Re: GIT_ONE_FILESYSTEM inclusion?
Message-ID: <4BA9DCDD.6060109@viscovery.net>
URL: https://gitlist.dev/e/4BA9DCDD.6060109%40viscovery.net
In-Reply-To: <81b0412b1003240229l6f7eaa18l563c3d7ba0cf6cc5@mail.gmail.com>

```
Am 3/24/2010 10:29, schrieb Alex Riesen:
> And while at it, how about making it a config option? (i.e. core.oneFilesystem?)

It's difficult to have this as a config option when you are looking for a
repository... ;)

-- Hannes

```

## Alex Riesen, 2010-03-24 11:37

Subject: Re: GIT_ONE_FILESYSTEM inclusion?
Message-ID: <81b0412b1003240437n799bac07sb74db749d647817d@mail.gmail.com>
URL: https://gitlist.dev/e/81b0412b1003240437n799bac07sb74db749d647817d%40mail.gmail.com
In-Reply-To: <4BA9DCDD.6060109@viscovery.net>

```
On Wed, Mar 24, 2010 at 10:35, Johannes Sixt <j.sixt@viscovery.net> wrote:
> Am 3/24/2010 10:29, schrieb Alex Riesen:
>> And while at it, how about making it a config option? (i.e. core.oneFilesystem?)
>
> It's difficult to have this as a config option when you are looking for a
> repository... ;)
>

Isn't it a little pointless to look for repository when you can't
access its config?

```

## Lars Damerow, 2010-03-24 13:40

Subject: Re: GIT_ONE_FILESYSTEM inclusion?
Message-ID: <20100324134048.GB10190@pixar.com>
URL: https://gitlist.dev/e/20100324134048.GB10190%40pixar.com
In-Reply-To: <81b0412b1003240437n799bac07sb74db749d647817d@mail.gmail.com>

```
>From Alex Riesen <raa.lkml@gmail.com>, Wed, Mar 24, 2010 at 12:37:39PM +0100:
> 
> Isn't it a little pointless to look for repository when you can't
> access its config?

If you're doing the trendy thing of putting repository information in
your shell prompt, then your prompt is looking for a repository every
time you change a directory.

As for making this a command-line option: that's certainly doable, but
it makes it harder to enforce the option's use across an organization.
It's far easier for me to set an environment variable centrally on a
thousand workstations than to convince a potentially large number of
users to set a new shell alias for git.

thanks,
-lars

--
lars r. damerow :: button pusher :: pixar animation studios

```

## Matthieu Moy, 2010-03-24 13:43

Subject: Re: GIT_ONE_FILESYSTEM inclusion?
Message-ID: <vpqd3yt4yyp.fsf@bauges.imag.fr>
URL: https://gitlist.dev/e/vpqd3yt4yyp.fsf%40bauges.imag.fr
In-Reply-To: <81b0412b1003240437n799bac07sb74db749d647817d@mail.gmail.com>

```
Alex Riesen <raa.lkml@gmail.com> writes:

> On Wed, Mar 24, 2010 at 10:35, Johannes Sixt <j.sixt@viscovery.net> wrote:
>> Am 3/24/2010 10:29, schrieb Alex Riesen:
>>> And while at it, how about making it a config option? (i.e. core.oneFilesystem?)
>>
>> It's difficult to have this as a config option when you are looking for a
>> repository... ;)
>>
>
> Isn't it a little pointless to look for repository when you can't
> access its config?

I guess Johannes's point is that the config option can be in
$GIT_DIR/config, which you can't access when looking for $GIT_DIR.
OTOH, looking at ~/.gitconfig to find a core.oneFilesystem makes sense
(but is probably painfull to implement since the current code to parse
config file will look for $GIT_DIR first).

-- 
Matthieu Moy
http://www-verimag.imag.fr/~moy/

```

## Alex Riesen, 2010-03-24 13:59

Subject: Re: GIT_ONE_FILESYSTEM inclusion?
Message-ID: <81b0412b1003240659u4e6de405t7750b66ca9292cdc@mail.gmail.com>
URL: https://gitlist.dev/e/81b0412b1003240659u4e6de405t7750b66ca9292cdc%40mail.gmail.com
In-Reply-To: <20100324134048.GB10190@pixar.com>

```
On Wed, Mar 24, 2010 at 14:40, Lars Damerow <lars@pixar.com> wrote:
> From Alex Riesen <raa.lkml@gmail.com>, Wed, Mar 24, 2010 at 12:37:39PM +0100:
>>
>> Isn't it a little pointless to look for repository when you can't
>> access its config?
>
> If you're doing the trendy thing of putting repository information in
> your shell prompt, then your prompt is looking for a repository every
> time you change a directory.

Right. OTOH, if you know that your .git is accessible (on the right
filesystem), but want to avoid scans in the directories below the top-
level working directory (submodules?), you may want to have it
configurable per-repository. The environment variable will affect
scan in all your repositories you visit in this session, which maybe
what you want, and maybe not.
And yes, the config option is also in addition to, not instead of
the environment variable.

> As for making this a command-line option: that's certainly doable, but
> it makes it harder to enforce the option's use across an organization.
> It's far easier for me to set an environment variable centrally on a
> thousand workstations than to convince a potentially large number of
> users to set a new shell alias for git.

Oh, I wasn't clear. I didn't mean "instead of". A command-line option
_in_addition_ to the environment variable. For one-off uses.

```

## Junio C Hamano, 2010-03-24 16:33

Subject: Re: GIT_ONE_FILESYSTEM inclusion?
Message-ID: <7vpr2tu1bd.fsf@alter.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vpr2tu1bd.fsf%40alter.siamese.dyndns.org
In-Reply-To: <81b0412b1003240659u4e6de405t7750b66ca9292cdc@mail.gmail.com>

```
Alex Riesen <raa.lkml@gmail.com> writes:

> Oh, I wasn't clear. I didn't mean "instead of". A command-line option
> _in_addition_ to the environment variable. For one-off uses.

I may have been the one who mentioned "-x to git potty" as a possibility,
but I agree with Lars---I think it would be too cumbersome to use in
practice.

When would you invoke this feature as "one-off"?

```

## Alex Riesen, 2010-03-24 19:07

Subject: Re: GIT_ONE_FILESYSTEM inclusion?
Message-ID: <81b0412b1003241207s4951b32cpbe105e7b3623f61a@mail.gmail.com>
URL: https://gitlist.dev/e/81b0412b1003241207s4951b32cpbe105e7b3623f61a%40mail.gmail.com
In-Reply-To: <7vpr2tu1bd.fsf@alter.siamese.dyndns.org>

```
On Wed, Mar 24, 2010 at 17:33, Junio C Hamano <gitster@pobox.com> wrote:
> Alex Riesen <raa.lkml@gmail.com> writes:
>
>> Oh, I wasn't clear. I didn't mean "instead of". A command-line option
>> _in_addition_ to the environment variable. For one-off uses.
>
> I may have been the one who mentioned "-x to git potty" as a possibility,
> but I agree with Lars---I think it would be too cumbersome to use in
> practice.
>
> When would you invoke this feature as "one-off"?
>

Maybe when I want to make sure git status does not go all over an
NFS mounted submodule.

But frankly, I think it will be the most obscure feature of Git ever,
with a command-line option or without. I just wanted to suggest
(and actually, just should have, stupid me) to keep it in line with
other similar configurations, which are present in all three forms
(work tree comes to mind... Come to think of it, only the work tree).

```

## Junio C Hamano, 2010-03-24 20:04

Subject: Re: GIT_ONE_FILESYSTEM inclusion?
Message-ID: <7vwrx1fpv9.fsf@alter.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vwrx1fpv9.fsf%40alter.siamese.dyndns.org
In-Reply-To: <81b0412b1003241207s4951b32cpbe105e7b3623f61a@mail.gmail.com>

```
Alex Riesen <raa.lkml@gmail.com> writes:

>> When would you invoke this feature as "one-off"?
>
> Maybe when I want to make sure git status does not go all over an
> NFS mounted submodule.

But then what would you do after finding it out that it might?  You stop
working on that project?  Doesn't --ignore-submodules do the same thing?

```

## Lars Damerow, 2010-03-24 20:07

Subject: Re: GIT_ONE_FILESYSTEM inclusion?
Message-ID: <20100324200733.GG7038@pixar.com>
URL: https://gitlist.dev/e/20100324200733.GG7038%40pixar.com
In-Reply-To: <81b0412b1003241207s4951b32cpbe105e7b3623f61a@mail.gmail.com>

```
>From Alex Riesen <raa.lkml@gmail.com>, Wed, Mar 24, 2010 at 08:07:03PM +0100:
> But frankly, I think it will be the most obscure feature of Git ever,

Wow. Would I win a prize or something? :)

--
lars r. damerow :: button pusher :: pixar animation studios

```

## Alex Riesen, 2010-03-24 20:36

Subject: Re: GIT_ONE_FILESYSTEM inclusion?
Message-ID: <81b0412b1003241336n71b4f5ael7ecbb72236a245db@mail.gmail.com>
URL: https://gitlist.dev/e/81b0412b1003241336n71b4f5ael7ecbb72236a245db%40mail.gmail.com
In-Reply-To: <7vwrx1fpv9.fsf@alter.siamese.dyndns.org>

```
On Wed, Mar 24, 2010 at 21:04, Junio C Hamano <gitster@pobox.com> wrote:
> Alex Riesen <raa.lkml@gmail.com> writes:
>
>>> When would you invoke this feature as "one-off"?
>>
>> Maybe when I want to make sure git status does not go all over an
>> NFS mounted submodule.
>
> But then what would you do after finding it out that it might?  You stop

Postpone whatever you were about to do, maybe.

> working on that project?  Doesn't --ignore-submodules do the same thing?

It does. I said it is obscure.

```

## David Aguilar, 2010-03-27 22:27

Subject: Re: GIT_ONE_FILESYSTEM inclusion?
Message-ID: <20100327222730.GA10922@gmail.com>
URL: https://gitlist.dev/e/20100327222730.GA10922%40gmail.com
In-Reply-To: <vpqd3yt4yyp.fsf@bauges.imag.fr>

```
On Wed, Mar 24, 2010 at 02:43:26PM +0100, Matthieu Moy wrote:
> Alex Riesen <raa.lkml@gmail.com> writes:
> 
> > On Wed, Mar 24, 2010 at 10:35, Johannes Sixt <j.sixt@viscovery.net> wrote:
> >> Am 3/24/2010 10:29, schrieb Alex Riesen:
> >>> And while at it, how about making it a config option? (i.e. core.oneFilesystem?)
> >>
> >> It's difficult to have this as a config option when you are looking for a
> >> repository... ;)
> >>
> >
> > Isn't it a little pointless to look for repository when you can't
> > access its config?
> 
> I guess Johannes's point is that the config option can be in
> $GIT_DIR/config, which you can't access when looking for $GIT_DIR.
> OTOH, looking at ~/.gitconfig to find a core.oneFilesystem makes sense
> (but is probably painfull to implement since the current code to parse
> config file will look for $GIT_DIR first).
> 
> -- 
> Matthieu Moy
> http://www-verimag.imag.fr/~moy/

Right.

As this thread showed, we can't have a config option for this
feature.  Were there any other objections to the patch?
It looks good to me.

Peff also agreed that it was an overall improvement.
http://thread.gmane.org/gmane.comp.version-control.git/142262

Thread with the latest (v3) version of the patch:
http://thread.gmane.org/gmane.comp.version-control.git/142436

We could use this feature at Disney Animation as well.
We maintain a list of $GIT_CEILING_DIRECTORIES and could do
without having to maintain it if we had this feature.


Plus, Lars is one of the git users that doesn't even flinch when
the Perforce servers at Pixar get a hiccup, so we should try and
help our fellow "renegade" git users ;-)

-- 
		David

```

## Jeff King, 2010-03-28 09:24

Subject: Re: GIT_ONE_FILESYSTEM inclusion?
Message-ID: <20100328092407.GA17406@coredump.intra.peff.net>
URL: https://gitlist.dev/e/20100328092407.GA17406%40coredump.intra.peff.net
In-Reply-To: <20100327222730.GA10922@gmail.com>

```
On Sat, Mar 27, 2010 at 03:27:32PM -0700, David Aguilar wrote:

> Peff also agreed that it was an overall improvement.
> http://thread.gmane.org/gmane.comp.version-control.git/142262
> 
> Thread with the latest (v3) version of the patch:
> http://thread.gmane.org/gmane.comp.version-control.git/142436

Yep.  I had been meaning to review v3, and I just did. With the
exception of a few minor nits (which I posted in that thread), I think
it looks good.

-Peff

```
