Obtener sha de la última confirmación antes de tirar

Después de tirar, git enumera los files modificados desde la última extracción.

La pregunta es cómo get esta list después de que se haya realizado más trabajo en el repository local.

p.ej

$ git checkout feature/default2 $ git pull Updating 5420c70..b8eec49 Fast-forward application/configs/application.ini | 1 + application/modules/product/forms/Search.php | 3 ++ public/themes/default/bootstrap/buttons.less | 25 ----------- public/themes/default/css/cmspanel.css | 234 ++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------------------- public/themes/default/css/products.css | 57 ++++++++++++++++++++---- public/themes/default/css/style.css | 270 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------------------- public/themes/default/gfx/icons/menu-drop-dark.png | Bin 0 -> 160 bytes public/themes/default/gfx/icons/more.png | Bin 0 -> 120 bytes public/themes/default/layouts/scripts/footer.phtml | 26 ++++++++++- public/themes/default/layouts/scripts/gallery.phtml | 2 + public/themes/default/layouts/scripts/home.phtml | 2 + public/themes/default/layouts/scripts/layout.phtml | 2 + public/themes/default/layouts/scripts/products.phtml | 22 ++++----- public/themes/default/less/cmspanel.less | 26 +++++++++++ public/themes/default/less/nav.less | 4 +- public/themes/default/less/products.less | 61 +++++++++++++++++++++---- public/themes/default/less/style.less | 59 ++++++++++++++++++++++--- public/themes/default/less/widgets.less | 37 +++++++++++++++- public/themes/default/modules/cms/scripts/widgets/random.phtml | 6 +-- public/themes/default/modules/default/scripts/widgets/submenu.phtml | 2 +- public/themes/default/modules/product/scripts/index/view.phtml | 44 +++++++++--------- public/themes/default/modules/product/scripts/widgets/search.phtml | 16 +++++++ 22 files changed, 584 insertions(+), 315 deletions(-) create mode 100644 public/themes/default/gfx/icons/menu-drop-dark.png create mode 100644 public/themes/default/gfx/icons/more.png 

El 5420c70 es el estado antes de tirar.
¿Cómo determinar ese 5420c70 sha?

Si estoy en lo correcto, ORIG_HEAD es el estado antes de la última extracción (cualquier extracción, no la extracción que introdujo algunos cambios).

Estoy buscando algún alias mágico como git checkout SOME_HEAD para hacer el git checkout 5420c70 por mí.

Intento configurar un alias de git review , que debe modificar todos los files modificados desde la última extracción, que no estaba actualizada.

En un caso básico, algo como esto funciona:

 git pull # lists some chanes file git diff --name-status ORIG_HEAD.. # diffs them 

pero estoy buscando algo como esto:

 git pull # lists some chanes file git pull # up-to-date, no changes git diff --name-status ORIG_HEAD.. # diffs the files since the last pull which was not up-to-date 

Creo que puedes verificar el reflog, es decir, HEAD@{1} , por ejemplo, diff --name-only ..HEAD@{1} .

Como otra opción, puede hacer git fetch luego hacer git log -p ..@{upstream} para ver los próximos cambios, y luego git merge FETCH_HEAD para traer los cambios a su copy de trabajo.

Después de mirar en el reflog, descubrí que esto es lo que estaba buscando:

 git reflog --oneline | grep -m 1 "pull " | cut -d' ' -f1) 

Esto devolverá solo un sha de la extracción exitosa anterior, que puede usarse en show , log , diff , etc.

Si entiendo lo que quieres, git pull no es el command que necesitas, debes mirar git fetch

cuando eso se haya completado, puedes hacer

git diff HEAD...origin nota de git diff HEAD...origin que necesita 3 puntos en lugar de los 2 habituales

Eso dará una única diferencia de todos los cambios. Cuando estés contento, puedes fusionarlos de la forma habitual con git merge o usando git cherry-pick para seleccionar solo algunos

 git log -n 1 --pretty=format:%H