git diff <nombre de file> que muestra los cambios para una nueva sucursal y una sucursal anterior

He cometido cambios de código de test.js en una twig (antigua). Ahora he creado una nueva twig e hice algunos cambios de código en el mismo file test.js. Mientras se hace

git diff test.js 

mostrando cambios de código de cambios de twigs anteriores y nuevos cambios de código.

¿Muestra todos los cambios de código (cambios que he confirmado en la configuration anterior y nuevos cambios)?

En general, git diff compara solo dos cosas. (Las excepciones no se aplican aquí.) Usted elige qué dos cosas, y Git le da un set de instrucciones, por ejemplo:

  • sacar esta línea en esta location
  • poner en esta otra línea en esta otra location

eso, si los sigues, transformará lo primero en lo segundo .

En este caso particular, las dos cosas que seleccionó con:

 git diff test.js 

son la versión de test.js que está en el índice , y la versión de test.js que está en el tree de trabajo . Ninguno de estos es necesariamente en ninguna twig (aunque, por supuesto, una o ambas versiones pueden coincidir con algunas versiones de algunos files en alguna otra twig).

La breve descripción del tree de trabajo es bastante simple: es donde trabajas en tus files. Los files almacenados dentro de Git están en formatting solo de Git, por lo que para que los otros progtwigs en su computadora los usen, debe tenerlos en un lugar donde pueda trabajar en ellos. Ese es el tree de trabajo.

La breve descripción del índice es que es donde tienes a Git para build tu próxima confirmación. Comienza a coincidir con su confirmación actual , desde su twig actual; cuando se git add un file, eso copy el file del tree de trabajo en el índice, de modo que esté listo para pasar al siguiente compromiso.

Para leer más sobre lo que son y lo que son el tree de trabajo y el índice de Git, vea Diferencia entre CABEZA / Árbol de trabajo / Índice en Git .

git diff test.js mostrará los cambios en el file solo en la twig actual.