No Windows 7 (talvez o mesmo ou semelhante para o Windows 10), para Visual Studio e a linha de comando Git, sua configuração global está em:
%USERPROFILE%\.gitconfig
(o ponto está na frente do nome do arquivo)
Mas isso não é honrado pelo Sourcetree, pelo menos no modo Git Embedded, e a configuração está em:
%USERPROFILE%\AppData\Local\Atlassian\SourceTree\git_local\mingw32\etc\gitconfig
(nenhum ponto na frente do nome do arquivo)
(Eu precisava atualizar os dois arquivos para modificar minhas configurações globais do Git para o comando Git e Sourcetree.)
Outra parte divertida. A configuração de ganchos Git estava funcionando a partir do AppData\Local\...
local, mas depois de mais pesquisas via Process Monitor , percebi que de alguma forma Sourcetree também está carregando global da unidade mapeada da empresa para o meu usuário.
Isso faz muito pouco sentido, pois poucos aplicativos procuram este local, mas de alguma forma o Sourcetree o faz, então se você não conseguir fazer com que funcione por configurações de local no Sourcetree, execute o Process Monitor e crie uma regra para registrar apenas o caminho contendo gitconfig pode descobrir onde realmente está sua configuração global no caso de um diretório de usuário mapeado em rede.
E isso pode não ser nem culpa do Sourcetree, pois vejo agora, enquanto escrevo isto, que o git.exe está carregando isso, mas isso acontece apenas para o git.exe executado pelo Sourcetree, enquanto uma linha de comando direta que o Git usa %USERPROFILE%\.gitconfig
Por fim, peguei todos os resultados do Process Monitor, coloquei no SQL Server e executei uma consulta para obter resultados distintos (nenhuma ordem de execução específica, apenas classificada por caminho):
Não sei como essas configurações se relacionam entre si, mas sei que algumas substituem outras, algumas configurações funcionam de um local e outras funcionam de outro.
E a lista acima é invocada pelo Sourcetree , novamente uma linha de comando direta com Git parece funcionar bem %USERPROFILE%\.gitconfig
, e isso não está nesta lista, mas seria assim (no Windows 7)C:\Users\pawel.cioch\.gitconfig
git config --list --show-origin
, você não terá que adivinhar qual configuração git está onde. Veja minha resposta abaixo