As resoluções do gitconfig com link simbólico incluem em relação ao link simbólico

As resoluções do gitconfig com link simbólico incluem em relação ao link simbólico

Eu adicionei um gitconfig aos meus dotfiles. Para manter as coisas organizadas, um link simbólico ~/.gitconfigaponta para o arquivo real, que reside em outro lugar.

Eu quero ter uma seção como:

[include]
    path = other-file.txt

no meu gitconfig. Mas isso não funciona porque tenta incluir ~/other-file.txt(em relação ao link simbólico) o que não existe. Em vez disso, tenho que usar:

[include]
    path = /absolute/path/to/other-file.txt

Mas se eu mover meu diretório dotfiles, essa inclusão será interrompida. Existe uma maneira de fazer o caminho relativo funcionar?

Responder1

Não, não há uma maneira de fazer com que o Git resolva links simbólicos antes de calcular um caminho relativo. A documentação diz especificamente que é relativo ao arquivo que está sendo carregado, que é ~/.gitconfig.

No entanto, o Git oferece suporte a vários arquivos por usuário. Há $HOME/.gitconfige $XDG_CONFIG_HOME/git/config. Neste último caso, se $XDG_CONFIG_HOMEnão estiver definido, o padrão é ~/.config. Como resultado, você pode armazenar sua configuração do Git ~/.config/git/confige também ter o ~/.config/git/other-file.txt, que deve funcionar corretamente.

informação relacionada