# Propagating config to clones/pulls

5 messages from 2010-09-07 to 2010-09-08. Participants: Douglas Tan, Thomas Rast, David Aguilar, Neal Kreitzinger.
Thread: https://gitlist.dev/t/25018

## Douglas Tan, 2010-09-07 08:56

Subject: Propagating config to clones/pulls
Message-ID: <A8F08AD5-6DB5-4A4D-9A8F-79DDBD93E666@getgosu.com>
URL: https://gitlist.dev/e/A8F08AD5-6DB5-4A4D-9A8F-79DDBD93E666%40getgosu.com

```
I have some config settings that I'll like to make default for anyone cloning/pulling from the central remote bare repository. I've tried to do this by editing the config file in the bare repository on the server but the change doesn't appear when cloning. How can I go about pushing default config settings to anyone cloing or pulling from the repository?
```

## Thomas Rast, 2010-09-07 09:23

Subject: Re: Propagating config to clones/pulls
Message-ID: <201009071123.21011.trast@student.ethz.ch>
URL: https://gitlist.dev/e/201009071123.21011.trast%40student.ethz.ch
In-Reply-To: <A8F08AD5-6DB5-4A4D-9A8F-79DDBD93E666@getgosu.com>

```
Douglas Tan wrote:
> 
> I have some config settings that I'll like to make default for
> anyone cloning/pulling from the central remote bare repository. I've
> tried to do this by editing the config file in the bare repository
> on the server but the change doesn't appear when cloning. How can I
> go about pushing default config settings to anyone cloing or pulling
> from the repository?

You can't, since that would open a whole range of security issues.

You can put some config defaults inside the repository itself, but it
is up to your users whether they apply them.  Perhaps it's best to
write them as a shellscript that adds to the configuration file(s) so
that it is easy to apply it later, e.g.,

  #!/bin/sh
  git config diff.jpg.textconv exiftool
  cat >> .gitattributes <<EOF
  *.jpg diff=jpg
  EOF

-- 
Thomas Rast
trast@{inf,student}.ethz.ch

```

## David Aguilar, 2010-09-07 11:05

Subject: Re: Propagating config to clones/pulls
Message-ID: <AANLkTikbCTRKpN7w=-xoj8uKvSV1X2U8fnhXgva=oA=8@mail.gmail.com>
URL: https://gitlist.dev/e/AANLkTikbCTRKpN7w%3D-xoj8uKvSV1X2U8fnhXgva%3DoA%3D8%40mail.gmail.com
In-Reply-To: <201009071123.21011.trast@student.ethz.ch>

```
On 9/7/10, Thomas Rast <trast@student.ethz.ch> wrote:
> Douglas Tan wrote:
>  >
>  > I have some config settings that I'll like to make default for
>  > anyone cloning/pulling from the central remote bare repository. I've
>  > tried to do this by editing the config file in the bare repository
>  > on the server but the change doesn't appear when cloning. How can I
>  > go about pushing default config settings to anyone cloing or pulling
>  > from the repository?
>
>  You can't, since that would open a whole range of security issues.
>
>  You can put some config defaults inside the repository itself, but it
>  is up to your users whether they apply them.  Perhaps it's best to
>  write them as a shellscript that adds to the configuration file(s) so
>  that it is easy to apply it later, e.g.,
>
>   #!/bin/sh
>   git config diff.jpg.textconv exiftool
>   cat >> .gitattributes <<EOF
>   *.jpg diff=jpg
>   EOF
>
>  --
>  Thomas Rast
>  trast@{inf,student}.ethz.ch

Also.. if you happen to have administrator access to their machines
(or if they do) then you can roll an .rpm/.deb/etc. containing an
/etc/gitconfig and install it on their machines.  That'll apply these
settings globally without them having to run a script everytime a repo
is cloned.
-- 
    David

```

## Neal Kreitzinger, 2010-09-07 21:36

Subject: Re: Propagating config to clones/pulls
Message-ID: <i66bas$q4t$1@dough.gmane.org>
URL: https://gitlist.dev/e/i66bas%24q4t%241%40dough.gmane.org
In-Reply-To: <A8F08AD5-6DB5-4A4D-9A8F-79DDBD93E666@getgosu.com>

```
"Douglas Tan" <douglas@getgosu.com> wrote in message 
news:A8F08AD5-6DB5-4A4D-9A8F-79DDBD93E666@getgosu.com...
>I have some config settings that I'll like to make default for anyone 
>cloning/pulling from the central remote bare repository. I've tried to do 
>this by editing the config file in the bare repository on the server but 
>the change doesn't appear when cloning. How can I go about pushing default 
>config settings to anyone cloing or pulling from the repository?--

Based on the assumption that your "child" repos are supposed to have the 
same .git/config files, I tried using git-init --template=x with a config 
file in template directory "x", but git-init only picks up the config file 
on an initialization of a new repo, not on a reinitialization of an existing 
repo.

v/r,
Neal 

```

## Douglas Tan, 2010-09-08 03:08

Subject: Re: Propagating config to clones/pulls
Message-ID: <5892B461-8BBA-4E1D-9BC4-3EADCEA4F98E@getgosu.com>
URL: https://gitlist.dev/e/5892B461-8BBA-4E1D-9BC4-3EADCEA4F98E%40getgosu.com
In-Reply-To: <AANLkTikbCTRKpN7w=-xoj8uKvSV1X2U8fnhXgva=oA=8@mail.gmail.com>

```
Thanks for the suggestions, I think I'll have everyone cloning the repositories to add the configuration settings in ~/.gitconfig instead.

On 07/09/2010, at 7:05 PM, David Aguilar wrote:

> On 9/7/10, Thomas Rast <trast@student.ethz.ch> wrote:
>> Douglas Tan wrote:
>>> 
>>> I have some config settings that I'll like to make default for
>>> anyone cloning/pulling from the central remote bare repository. I've
>>> tried to do this by editing the config file in the bare repository
>>> on the server but the change doesn't appear when cloning. How can I
>>> go about pushing default config settings to anyone cloing or pulling
>>> from the repository?
>> 
>> You can't, since that would open a whole range of security issues.
>> 
>> You can put some config defaults inside the repository itself, but it
>> is up to your users whether they apply them.  Perhaps it's best to
>> write them as a shellscript that adds to the configuration file(s) so
>> that it is easy to apply it later, e.g.,
>> 
>>  #!/bin/sh
>>  git config diff.jpg.textconv exiftool
>>  cat >> .gitattributes <<EOF
>>  *.jpg diff=jpg
>>  EOF
>> 
>> --
>> Thomas Rast
>> trast@{inf,student}.ethz.ch
> 
> Also.. if you happen to have administrator access to their machines
> (or if they do) then you can roll an .rpm/.deb/etc. containing an
> /etc/gitconfig and install it on their machines.  That'll apply these
> settings globally without them having to run a script everytime a repo
> is cloned.
> -- 
>    David

```
