traductores traductor traducción traduccion tipos son profesionales para libros las interpretacion herramientas cuales asistida git newline core.autocrlf

traductor - ¿Cómo obligo a git a que compruebe la rama principal y elimine los retornos de carro después de que haya normalizado los archivos usando el atributo "texto"?



tipos de traduccion (2)

De acuerdo, entonces agregué el archivo .gitattributes con líneas como esta

*.css text *.js text etc...

Luego seguí las instrucciones en http://git-scm.com/docs/gitattributes#_checking-out_and_checking-in

$ rm .git/index # Remove the index to force Git to $ git reset # re-scan the working directory $ git status # Show files that will be normalized $ git add -u $ git add .gitattributes $ git commit -m "Introduce end-of-line normalization"

¡Pero ahora mi copia de trabajo todavía tiene los retornos de carro! He desbloqueado archivos que me gustaría guardar. ¿Cómo hago para que git checkout la rama principal vuelva a tener los archivos normalizados?

Sé que los archivos están normalizados en el repositorio porque cuando clono el repositorio, tengo todos los archivos sin los retornos de carro.


¡Ah ah! Revisa la confirmación anterior, luego descarga el maestro.

git checkout HEAD^ git checkout -f master


Como han señalado otros, uno podría simplemente eliminar todos los archivos en el repositorio y luego verificarlos. Prefiero este método y se puede hacer con el siguiente código

git ls-files -z | xargs -0 rm git checkout -- .

o una línea

git ls-files -z | xargs -0 rm ; git checkout -- .

¡Lo uso todo el tiempo y aún no he encontrado ninguna desventaja!

Para obtener más explicaciones, la -z agrega un carácter nulo al final de cada salida de entrada mediante ls-files , y -0 le dice a xargs que delimite la salida que estaba recibiendo por esos caracteres nulos.