2011-06-22 23 views
7

git config --global core.autocrlf inputgit autocrlf input convierte terminaciones de línea pero de LF a CRLF?

acuerdo con this github help page esto debe configurar git lo que convierte todas las terminaciones de líneas a LF en la comisión.

Sin embargo, cuando commiting a mi repo esta es la salida que consigo.

> git commit -am "test commit" 
warning: LF will be replaced by CRLF in .htaccess. 
The file will have its original line endings in your working directory. 
warning: LF will be replaced by CRLF in .htaccess. 
The file will have its original line endings in your working directory. 
[release/4.2 27bad5b] test commit 
warning: LF will be replaced by CRLF in .htaccess. 
The file will have its original line endings in your working directory. 
1 files changed, 1 insertions(+), 1 deletions(-) 

Luego revisé mi configuración para ver si la opción autocrlf estaba correctamente configurada y así fue.

> git config -l | grep "crlf" 
core.autocrlf=input 

¿Por qué git dicen que es la conversión de mi LF a CRLF y no al revés que es lo que estoy buscando?

Y por qué se quejan 3 veces? ¿Es porque encontró 3 ocurrencias que serán reemplazadas? ¿Por qué me avisa una vez después de enviar el commithash?

Estoy confundido (y en un Mac para el registro :))

+0

(como una nota, esa página GitHub menciones "autocrlf = entrada" sólo en las pestañas no son de Windows ...) – rogerdpack

Respuesta

13

Después de mucho tiempo con el trato con los finales de línea, simplemente no permitirá que cualquier herramienta, incluyendo VCS a cambiar en mí.

Ahora uso autocrlf false y core.whitespace cr-at-eol. Esto elimina la desagradable salida M en diff. Esto es sólo una adición resaltado que Git hace para saber las cosas espeluznantes como espacios en blanco extra al final de una línea o justo antes de una pestaña, etc.

Esperamos que usted puede hacer lo mismo y acabar de una línea de la locura que termina siempre demasiado .

+0

consejos de Adán en el clavo. Tenía un problema similar al inicializar una gran cesión temporal con el contenido heredado intranet que contiene los finales de línea mixta de algunos archivos (que es lo que hace tropezar a autocrlf). Desactivar el autocrlf es el mejor curso de acción aquí. – Blackcoat

Cuestiones relacionadas