Não encontrei maneira de configurar o git neste quarto nível. A única maneira de substituir o valor de configuração por comando é usar git -c key=value
.
Minha solução hacky atual é definir uma função de shell que serve como um wrapper para git. Quando chamado, ele passa os argumentos para o comando system git, mas não antes de verificar no diretório de trabalho atual e adicionar um argumento extra ao comando, se aplicável.
function git () {
case "$PWD" in
/path/to/repos/*)
command git -c [email protected] "$@"
;;
*)
command git "$@"
;;
esac
}