2009-12-28 20 views
143

¿Qué comando puedo usar para imprimir la identificación de confirmación de HEAD?Git comando para mostrar el ID de confirmación HEAD?

Esto es lo que estoy haciendo con la mano:

$ cat .git/HEAD 
ref: refs/heads/v3.3 
$ cat .git/refs/heads/v3.3 
6050732e725c68b83c35c873ff8808dff1c406e1 

pero necesito un script que puede fiable canalizar la salida de algún comando en un archivo de texto de tal manera que el archivo de texto contiene exactamente el id de cometer HEAD (nada más ni menos, y no solo un árbitro). ¿Alguien puede ayudar?

+0

Tengo una pregunta similar antes. Y fue bien respondida aquí: https://stackoverflow.com/questions/44994626/why-git-use-2-different-commands-to-show -head – smwikipedia

Respuesta

253

utilizar el comando:

git rev-parse HEAD 

Para la versión corta:

git rev-parse --short HEAD 
+26

Para cualquiera que esté buscando la versión corta del hash, 'git rev-parse --short HEAD' funcionará. – mgarciaisaia

9

hilo de edad, todavía para referencia futura ... :) obras, incluso siguientes

git show-ref --head 

por HEAD por defecto se filtra. Tenga cuidado con seguir; "cabezas" plurales con una "s" al final. El siguiente comando muestra ramas en "refs/heads"

git show-ref --heads 
+0

Gracias. Útil. –

+1

usando estos comandos en un repo (grande) de git, obtengo dos líneas de 'git show-ref -heads' y 6290 líneas de' git show-ref -head'. entonces si solo quieres un hash, esto quizás no da el resultado deseado. –

3

jugar con Bash:

git show HEAD | sed -n 1p | cut -d " " -f 2 
+1

Evite las tuberías con 'git show --pretty =% H' – bufh

12
git log -1 

por sólo comprometerse Identificación

git log | head -n 1 
0

Según https://git-scm.com/docs/git-log, para obtener más salida bonita en la consola puede usar --decorate argumento de git-log comando:

git log --pretty=oneline --decorate 

imprimirá:

2a5ccd714972552064746e0fb9a7aed747e483c7 (HEAD -> master) New commit 
fe00287269b07e2e44f25095748b86c5fc50a3ef (tag: v1.1-01) Commit 3 
08ed8cceb27f4f5e5a168831d20a9d2fa5c91d8b (tag: v1.1, tag: v1.0-0.1) commit 1 
116340f24354497af488fd63f4f5ad6286e176fc (tag: v1.0) second 
52c1cdcb1988d638ec9e05a291e137912b56b3af test 
Cuestiones relacionadas