tipos tag qué existen example etiquetas crear comando git github

tag - Cómo verificar las diferencias entre local y github antes del pull



qué tipos de etiquetas existen en git (3)

Si no le interesan los detalles de las salidas de git diff , puede ejecutar git cherry que generará una lista de confirmaciones que su sucursal de seguimiento remoto tiene antes de su sucursal local.

Por ejemplo:

git fetch origin git cherry master origin/master

Producirá algo así como:

+ 2642039b1a4c4d4345a0d02f79ccc3690e19d9b1 + a4870f9fbde61d2d657e97b72b61f46d1fd265a9

Indica que hay dos confirmaciones en mi sucursal de seguimiento remoto que no se han fusionado en mi sucursal local.

Esto también funciona de la otra manera:

git cherry origin/master master

Le mostrará una lista de confirmaciones locales que aún no ha enviado a su repositorio remoto.

Esta pregunta ya tiene una respuesta aquí:

Antes de usar pull, quiero verificar si hay alguna diferencia entre mi maestro local y github.

¿Cómo puedo hacerlo?


Y otro comando útil para hacer esto (después de git fetch) es:

git log origin/master ^master

Esto muestra las confirmaciones que están en el origen / maestro pero no en el maestro. También puedes hacerlo en sentido opuesto al hacer git pull, para verificar qué commits se enviarán a control remoto.


git pull es realmente equivalente a ejecutar git fetch y luego a git merge . La git fetch actualiza las denominadas "ramas de seguimiento remoto", generalmente estas son las que parecen origin/master , github/experiment , etc. que se ven con git branch -r . Estos son como un caché del estado de las ramas en el repositorio remoto que se actualizan cuando haces git fetch (o un git push exitoso).

Entonces, supongamos que tiene un origin llamado remoto que se refiere a su repositorio de GitHub, usted haría:

git fetch origin

... y luego hacer:

git diff master origin/master

... para ver la diferencia entre tu master y el de GitHub. Si estás contento con esas diferencias, puedes fusionarlas con git merge origin/master , suponiendo que master es tu rama actual.

Personalmente, creo que hacer git fetch y git merge separado es generalmente una buena idea .