O Git parece suportar valores de configuração em três níveis:
- Configurações globais por sistema (armazenadas em
/etc/git-core
) - Configurações globais por usuário (armazenadas em
~/.gitconfig
) - Configurações locais por repositório (armazenadas em
$REPO/.git/config
)
Essas opções cobrem a maior parte das bases, mas estou procurando uma maneira de lidar com o quarto nível. Eu tenho uma coleção (muito) grande de repositórios para os quais preciso usar um valor diferente do user.email
que o habitual. Esses repositórios geralmente são criados e manipulados por meio de scripts automatizados, e a configuração local por repositório é complicada.
Todos os repositórios em questão estão localizados em um determinado prefixo de caminho no meu sistema local. Existe uma maneira de definir um valor de configuração em algum lugar que será herdado por todos os repositórios nesse caminho? (Algumas .htaccess
configurações semelhantes herdam todo o sistema de arquivos.) Talvez haja uma maneira de definir valores condicionais no arquivo de configuração global? Que outros arranjos poderiam ser feitos em um ambiente UNIX para lidar com um conjunto de repositórios como o meu?
.gitconfig
em cada diretório que eles criam. Por exemplo, o repo do IIRC Android pode fazer isso, mas você precisa ler a fonte com cuidado para descobrir. (Eu não estou completamente certo, eu não tenho feito isso há algum tempo.)