¿Cómo diferenciar un archivo de una versión arbitraria en Git?

Resuelto Chris K asked hace 13 años • 14 respuestas

¿Cómo puedo diferenciar un archivo, por ejemplo pom.xml, de la rama master a una versión anterior arbitraria en Git?

Chris K avatar Apr 08 '11 02:04 Chris K
Aceptado

Tu puedes hacer:

git diff master~20:pom.xml pom.xml

... para comparar su revisión actual pom.xmlcon la de masterhace 20 revisiones a través del primer padre. Puede reemplazar master~20, por supuesto, con el nombre del objeto (SHA1sum) de una confirmación o cualquiera de las muchas otras formas de especificar una revisión .

Tenga en cuenta que esto en realidad compara la versión anterior pom.xmlcon la versión en su árbol de trabajo, no con la versión confirmada en master. Si quieres eso, puedes hacer lo siguiente:

git diff master~20:pom.xml master:pom.xml
Mark Longair avatar Apr 07 '2011 19:04 Mark Longair
git diff <revision> <path>

Por ejemplo:

git diff b0d14a4 foobar.txt
Benjamin Pollack avatar Apr 07 '2011 19:04 Benjamin Pollack

Si desea ver la diferencia entre la última confirmación de un solo archivo, puede hacer:

git log -p -1 filename

Esto le dará la diferencia del archivo en git, no comparará su archivo local.

Gerardo avatar Aug 29 '2012 17:08 Gerardo