Você pode configurar a manipulação de final de linha por repositório adicionando um arquivo .gitattributes especial à pasta raiz do seu repositório Git. Se esse arquivo for confirmado no repositório, ele substituirá a configuração core.autocrlf do desenvolvedor individual.
Neste arquivo, você pode configurar o Git para detectar automaticamente as terminações da linha.
Nota: - Nem todas as ferramentas gráficas do Git suportam o arquivo .gitattributes, por exemplo, o Eclipse IDE atualmente não o suporta.
Aqui está um exemplo de arquivo .gitattributes. Você pode usá-lo como modelo para seus repositórios:
# Set the default behavior, in case people don't have core.autocrlf set.
* text=auto
# Explicitly declare text files you want to always be normalized and converted
# to native line endings on checkout.
*.c text
*.h text
# Declare files that will always have CRLF line endings on checkout.
*.sln text eol=crlf
# Denote all files that are truly binary and should not be modified.
*.png binary
*.jpg binary
Você notará que os arquivos são correspondidos - *. C, * .sln, * .png--, separados por um espaço e, em seguida, recebem uma configuração - texto, texto eol = crlf, binário. Analisaremos algumas configurações possíveis abaixo.
text = auto O
Git manipula os arquivos da maneira que achar melhor. Essa é uma boa opção padrão.
text eol = crlf O
Git sempre converterá as terminações de linha em CRLF no checkout. Você deve usar isso para arquivos que devem manter terminações CRLF, mesmo no OSX ou Linux. Por exemplo, aqui está um projeto do Windows que aplica finais de linha CRLF.
text eol = lf O
Git sempre converterá as terminações de linha em LF no checkout. Você deve usar isso para arquivos que devem manter as terminações LF, mesmo no Windows. Por exemplo , aqui está um projeto que aplica finais de linhas LF.
O
Git binário entenderá que os arquivos especificados não são texto e não deve tentar alterá-los. A configuração binária também é um alias para -text -diff.