Saltar al contenido

¿Qué hace git rev-parse?

Comprende el código correctamente antes de usarlo a tu trabajo y si tdeseas aportar algo puedes compartirlo con nosotros.

Solución:

git rev-parse es un auxiliar plumbing comando utilizado principalmente para la manipulación.

Un uso común de git rev-parse es imprimir los valores hash SHA1 dado un especificador de revisión. Además, tiene varias opciones para formatear esta salida, como --short para imprimir un SHA1 único más corto.

También hay otros casos de uso (en scripts y otras herramientas construidas sobre git) que he usado para:

  • --verify para verificar que el objeto especificado es un objeto Git válido.
  • --git-dir para mostrar la ruta abs/relativa del .git directorio.
  • Comprobando si estás actualmente dentro de un repositorio usando --is-inside-git-dir o dentro de un árbol de trabajo usando --is-inside-work-tree
  • Comprobando si el repositorio es un uso básico --is-bare-repository
  • Imprimiendo hashes SHA1 de ramas (--branches), etiquetas (--tags) y las referencias también se pueden filtrar según el control remoto (usando --remote)
  • --parse-opt para normalizar los argumentos en un script (algo similar a getopt) e imprimir una salida string que se puede usar con eval

Massage simplemente implica que es posible convertir la información de un formulario a otro, es decir, un comando de transformación. Estos son algunos ejemplos rápidos que se me ocurren:

  • una rama o nombre de etiqueta en el SHA1 del compromiso al que apunta para que pueda pasarse a un comando de plomería que solo acepta valores SHA1 para el compromiso.
  • un rango de revisión A..B por git log o git diff en los argumentos equivalentes para el comando de plomería subyacente como B ^A

Solo para profundizar en la etimología del nombre del comando. rev-parseGit usa consistentemente el término rev en los comandos de plomería como abreviatura de “revisión” y generalmente significa el hash SHA1 de 40 caracteres para una confirmación. El comando rev-list por ejemplo, imprime una lista de hashes de confirmación de 40 caracteres para una rama o lo que sea.

En este caso, el nombre podría ampliarse a parse-a-commitish-to-a-full-SHA1-hash. Si bien el comando tiene varias funciones auxiliares mencionadas en la respuesta de Tuxdude, su homónimo parece ser el caso de uso de transformar una referencia fácil de usar como un nombre de rama o un hash abreviado en el hash SHA1 de 40 caracteres inequívoco más útil para muchos programación/plomería propósitos

Sé que estuve pensando que era algo de “análisis inverso” durante bastante tiempo antes de darme cuenta y tuve el mismo problema para entender los términos “masaje” y “manipulación” 🙂

De todos modos, encuentro que esta noción de “analizar a una revisión” es una forma satisfactoria de pensar en ello, y un concepto confiable para recordar este comando cuando necesito ese tipo de cosas. Con frecuencia, en la secuencia de comandos de Git, toma una referencia de compromiso fácil de usar como entrada del usuario y, en general, desea que se resuelva en una referencia de trabajo validada e inequívoca tan pronto como sea posible después de recibirla. De lo contrario, la traducción y validación de entrada tiende a proliferar a través del script.

git rev-parse También funciona para obtener el nombre de la rama actual usando el indicador –abbrev-ref como:

git rev-parse --abbrev-ref HEAD

Tienes la opción de auxiliar nuestra investigación ejecutando un comentario o dejando una puntuación te damos la bienvenida.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *