Ignora o retorno de carro para um arquivo específico com Git

3

Eu uso múltiplos ambientes graças a máquinas virtuais, e meu diretório de código é compartilhado entre eles. Eu também gosto do meu código para ter os finais de linha nativos (host).

Quando estou em um host do Windows, faço o checkout do meu código e os finais de linha são convertidos em \r\n (e tudo bem para mim). Mas quando eu quero executar um script de shell da minha máquina virtual Linux, recebo erros dizendo que o /bin/sh^M não existe.

Posso dizer ao Git para manter as terminações do Unix para este arquivo específico ? Existe uma maneira melhor de lidar com finais de linha em múltiplos ambientes?

    
por Warren Seine 29.01.2011 / 18:35

2 respostas

1

Para um único arquivo, crie um arquivo .gitattributes contendo:

*.sh    eol=lf

(Outra configuração possível é -text , que simplesmente desativa a conversão de término de linha.)

    
por 29.01.2011 / 20:11
0

Você pode executar dos2unix nos arquivos para formatá-los corretamente para linux / unix.

    
por 29.01.2011 / 21:41