español - Dónde encontrar los cambios debido a `git fetch`
git pull example (3)
No quería perder algo de información después de un git pull
, así que hice una git fetch
antes. ¿Dónde puedo leer las nuevas modificaciones después de una git fetch
? Fui al archivo FETCH_HEAD
, pero no era más que un gran número.
Si solo quieres ver qué archivos se modificarán si haces un GIT PULL, haz esto:
git fetch && git diff HEAD @{u} --name-only
Si desea ver TODAS las diferencias entre su versión actual y la versión entrante, incluidas las modificaciones locales sin compromiso, escriba esto:
git fetch && git diff @{u} --name-only
Tratar
git log --oneline --decorate origin/master
Esto le dará el registro de cambios desde el control remoto principal master
del origin
(puede sustituir cualquier otra rama remota según sea necesario). Obtendrás una salida algo así:
234121 (origin/master) Commit message 5
872373 Commit message 4
623748 Commit message 3
235090 (master) Commit message 2
192399 Commit message 1
El compromiso marcado (master)
es el encabezado de su rama master
local. El compromiso marcado (origin/master)
es el encabezado de la rama master
del control remoto.
git fetch origin
por defecto todo desde el control remoto denominado "origen" y actualiza (o crea) las denominadas "ramas de seguimiento remoto" para ese control remoto. Digamos, para el nombre remoto "origen" que contiene ramas denominadas "maestro" y "característica", la ejecución de git fetch remote
dará como resultado que las ramas de seguimiento remoto denominadas "origen / maestro" y "origen / función" se actualicen (o se creen , si no existen). Podrías verlos en la salida de git branch -a
(notar "-a").
Ahora, la configuración habitual de Git es que (algunas de) sus sucursales locales siguen ciertas ramas remotas (generalmente con el mismo nombre). Es decir, su rama "maestra" local sigue "origen / maestro", etc.
Entonces, después de que hayas buscado, para ver qué "maestro" remoto ha comparado con tu "maestro" local, le pides a Git que te muestre exactamente esto:
git log origin/master ^master
lo que significa «todos los commits alcanzables desde" origin / master "que no incluyen commits accesibles desde" master "» o, como alternativa
git log master..origin/master
que tiene el mismo significado Consulte la página del manual "gitrevisions" para obtener más información, especialmente la parte "Especificación de rangos". También vea los ejemplos en la página de manual de git-log
Puede personalizar el resultado del git log
de git log
como mejor le parezca, ya que admite una gran cantidad de opciones que lo afectan.
Tenga en cuenta que su sucursal local también podría tener confirmaciones que la rama remota coincidente no contiene (aún). Para obtener una visión general de los mismos, debe revertir las revisiones pasadas al git log
para (con suerte) razones obvias.
Como de costumbre, es esencial informarse para comprender los conceptos subyacentes antes de comenzar a utilizar una herramienta. Por favor, hazlo.