Pregunta

Estoy instalando msysgit 1.6.4 beta en mi Win Vista desarrollo VPC. Una pantalla de instalación está solicitando si quiero usar terminación de línea Unix o terminación de línea de DOS. Por lo general, me quedaría con el DOS, pero el texto de configuración indica que la terminación DOS puede significar archivos no funcionan con todas las herramientas de línea de comandos de Git. Los estados de terminación de línea Unix "... la mayoría de las aplicaciones [Windows] pueden manejar esto ...".

¿Alguien sabe cuál es la opción que debería optar por utilizar Git a través de la cáscara para mi trabajo VS 2008?

¿Fue útil?

Solución

Eso ajustes durante el proceso de instalación de msysgit es en realidad aquí para fijar el valor de la core.autocrlf config .

core.autocrlf
  

Si es verdad, hace CRLF git convertido al final de las líneas en archivos de texto a LF al leer del sistema de ficheros, y convertir a la inversa cuando se escribe en el sistema de archivos.

     

La variable se puede ajustar a 'input', en cuyo caso la conversión ocurre sólo durante la lectura del sistema de archivos, pero los archivos se escriben con LF al final de las líneas.

     

Actualmente, qué rutas a considerar "texto" (es decir, ser sometido al mecanismo de autocrlf) se decide puramente basado en el contenido.

Me gustaría insistir en no tratar de convertir cualquier cosa automágicamente, los efectos secundarios son demasiado importantes (en términos de conflicto potencial fusión, especialmente en el desarrollo distribuido con diferentes ambientes)

Si sus herramientas pueden manejar terminación de línea al estilo Unix, se debe configurar para producir líneas de Unix, que luego pueden ser leídos por Windows (VS2008, Notepad ++, ...) y Unix por igual, y puede ser procesado por cualquier ' sh' Git-scripts.

Pero con core.autocrlf establece en false, la decisión de transformar una terminación de línea de texto será una explícita voluntario, no un fondo invisible de efectos secundarios uno.


Vea más en "Cómo fin de línea conversiones trabajan con git core.autocrlf entre diferentes sistemas operativos "

                 | Resulting conversion when       | Resulting conversion when 
                 | committing files with various   | checking out FROM repo - 
                 | EOLs INTO repo and              | with mixed files in it and
                 |  core.autocrlf value:           | core.autocrlf value:           
--------------------------------------------------------------------------------
File             | true       | input      | false | true       | input | false
--------------------------------------------------------------------------------
Windows-CRLF     | CRLF -> LF | CRLF -> LF | as-is | as-is      | as-is | as-is
Unix -LF         | as-is      | as-is      | as-is | LF -> CRLF | as-is | as-is
Mac  -CR         | as-is      | as-is      | as-is | as-is      | as-is | as-is
Mixed-CRLF+LF    | as-is      | as-is      | as-is | as-is      | as-is | as-is
Mixed-CRLF+LF+CR | as-is      | as-is      | as-is | as-is      | as-is | as-is

Otros consejos

Visual Studio asas 2008 Unix terminaciones de línea sin problemas. Sin embargo, se intentará detectar archivos de texto con terminaciones de línea inconsistentes en un intento de solucionar estos. Bloc de notas, por otro lado, no es capaz de mostrar correctamente Unix archivos de texto.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top