Git : Al hacer "git add" me dice LF will be replaced by CRLF
¿Por qué al hacer "git add" me dice "LF will be replaced by CRLF
No es un error, es simplemente una advertencia generada por una de las opciones de configuración de git, la opción core.autocrlf.
Lo que hace esa opción es indicar si quieres que en el repositorio se guarden los saltos de línea de los ficheros en formato Unix (LF) pese a tener tus ficheros en tu entorno local con saltos de línea al formato Windows (CRLF).
Esa opción la puedes configurar de varias formas:
-
core.autocrlf = true: Cuando commitees, tus ficheros se transformarán automáticamente a LF, y cuando hagas checkout de un fichero, se convertirá automáticamente a CRLF -
core.autocrlf = input: Cuando comitees, tus ficheros se transformarán automáticamente a LF, pero cuando hagas checkout, recibirás el fichero sin modificación de como esté en el repositorio. -
core.autocrlf = false: No se hará ningún cambio a los finales de línea de los ficheros de texto.
En tu caso, el mensaje de advertencia te está dando porque tienes puesta la primera opción (core.autocrlf = true).
Esta advertencia te puede estar pasando porque estás guardando los ficheros con saltos de línea LF desde Windows y git no se espera que los guardes de esa manera. Por lo que cuando vuelvas a hacer checkout de los ficheros, te los va a convertir el CRLF y los vas a ver mal en el editor.
Una vez entendido por qué te da esa advertencia, para evitar que te vuelva a salir, puedes:
- O bien cambiar en tu editor de texto la configuración para que guarde los saltos de línea con CRLF,
- o bien cambiar las opciones de configuración de git a input o false.
Esto es decisión tuya y estaría bien que lo pusieses en consenso con quien use además de ti ese repositorio.
Comando Git para averiguar el estado de core.autocrlf
git config core.autocrlf
Comando Git para cambiar el valor de core.autocrlf para el proyecto actual
git config core.autocrlf false
git config core.autocrlf true
Comando Git para cambiar el valor de core.autocrlf en forma GLOBAL
git config --global core.autocrlf false
Donde se almacena el valor de core.autocrlf
El valor de core.autocrlf se almacena en el archivo gitconfig que se encuentra en la carpeta
C:\Program Files\Git\etc\
Referencias
https://stackoverflow.com/questions/1967370/git-replacing-lf-with-crlf/20653073#20653073