2011-12-15 29 views
10

Estoy trabajando con Git en mi PC con Windows 7 en la línea de comandos y con TortoiseGit. Esto funciona bien Ahora he instalado EGit para Eclipse. EGit muestra todos los archivos como cambiados aunque el estado de git informa correctamente, que no hay cambios.Egit muestra todos los archivos como cambiados

¿Alguna idea de qué pasa?

+1

¿El eclipse está cambiando el estilo de los finales de línea (de 'LF' a' CRLF' o viceversa)? –

+0

@DavidBrigada dijo que 'git status' no muestra ninguna diferencia – fge

Respuesta

13

También tuve el problema similar, he cambiado el siguiente listado de ajuste repositorio bajo la configuración de Git en Eclipse

autocrlf = false

Esto solucionó el problema

Puede obtener más detalles de el siguiente enlace también:

There is nothing changed, but eclipse egit marks the file as changed

Básicamente añade este pro perty como verdadero para direccionar los caracteres ctrl + M en los archivos de script. Ahora no estoy seguro de cómo abordar este problema. Cualquier pensamiento sobre esto, por favor comparte.

+1

A diferencia de la publicación mencionada, solo estoy trabajando en Windows. Todas las demás herramientas, incluido Eclipse, funcionan bien y hasta el momento no hay problemas para finalizar la línea. Solo está EGit mostrando todo como cambiado. Jugar con la configuración de final de línea afectará al repositorio, que definitivamente no es el camino a seguir. – BetaRide

+0

¡Me solucionó el problema! – Etienne

+0

Parece haber solucionado mi problema, también es una buena idea cambiar las terminaciones de línea Eclipse a Unix si está trabajando en varias plataformas. Ayuda> Preferencias> General> Espacio de trabajo> Nuevo delimitador de línea de archivo de texto – 3urdoch

2

Esta es una respuesta tardía, pero recientemente me encontré con este mismo problema al clonar inicialmente un repositorio de git. EGit mostraba todos los archivos como cambiados a pesar de que acababa de ser clonado y git bash no mostraba cambios en los archivos.

Como normalmente no quiere autocrlf = false en las máquinas con Windows, dejé autocrlf = true y cloné el repositorio. Luego, en EGit, realicé los cambios falsos en todos los archivos y, finalmente, en git bash revertido a la confirmación anterior con git reset --hard HEAD^1. Esto engañó a EGit haciéndole creer que las terminaciones de línea eran correctas sin necesidad de tocar el repositorio real. Los commits y pulls después de este punto no han reproducido la confusión de EGit en mi configuración. Además, no se producen cambios inesperados al finalizar la línea cuando presiono al repositorio.

1

Nunca pude obtener alguna de las soluciones sugeridas para trabajar. Terminé arreglando el problema volviendo a clonar el repositorio con Windows instalado Git Bash (había clonado usando Git dentro de Cygwin anteriormente).

Estoy publicando esto como otra respuesta en caso de que alguien más esté en el mismo barco que yo.

1

¡También estaba teniendo este problema y me estaba volviendo loco! Se kepts diciendo 'Pedido conflictos con el archivo:'

De todas formas logró (tipo de) solucionar este problema utilizando una combinación de los siguientes:

equipo -> Avanzado -> asumida Sin cambios en el recurso que causa el conflicto

A continuación, cambie core.autocrlf a falso y también establezca core.whitespace en cadena vacía.

Esto funciona bien para los archivos .java, pero los archivos .xml y .xsd siguen causando este problema.

Cuestiones relacionadas