tutorial hub gui español commands comandos git

hub - git repository



En Git, ¿hay una manera de obtener el nombre "amigable" para un compromiso arbitrario? (2)

En Git, hay muchas formas de referirse a un compromiso, incluido el hash SHA completo o una forma abreviada del hash (por ejemplo, los primeros 6 caracteres). También puede nombrar confirmaciones usando una sintaxis "amigable", como HEAD, HEAD ^, HEAD ^^, HEAD ~ 3, y así sucesivamente.

Dado un compromiso arbitrario en forma de hash SHA, ¿existe una herramienta en Git para encontrar un nombre "amigable" para dicho compromiso?

Si uso git-show-branch , obtengo una lista de revisiones en forma "amigable", así que siento que debe haber una manera ... simplemente no puedo encontrar una herramienta para hacerlo.


Intenta git describe :

$ git describe --all --contains 90de2680dc54c0d600b0694bd175bd09357a8dba master~2


Puede usar "git name-rev" para obtener el formulario que está preguntando. Un problema con esa forma es que, al ser relativo a una rama, no es un nombre permanente. Por lo tanto, una alternativa es "git describe", que produce un nombre amistoso alternativo en función de qué tan adelante de una etiqueta está un commit determinado.

Por ejemplo:

srh@devo16:~/src/git <master>$ git name-rev 3cd7388 3cd7388 master~2

Pero luego, después de hacer un "git pull", master ~ 2 podría significar otra cosa. Por el contrario:

srh@devo16:~/src/git <master>$ git describe 3cd7388 v1.6.3.1-153-g3cd7388

Ahora "v1.6.3.1-153-g3cd7388" es un nombre permanente. Por supuesto, aún es un poco largo (aunque puede acortar el hash bit al final especificando "--abbrev = 4" por ejemplo) pero comunica que 3cd7388 tiene 153 cambios después de la versión 1.6.3.1.