Bienvenido al tema "Herramientas de Git y personalización", en el cual aprenderás acerca de las diversas herramientas y opciones disponibles para personalizar tu experiencia de trabajo con Git.
Las herramientas de Git y personalización son aquellas opciones y características adicionales que se pueden agregar o ajustar para mejorar la experiencia y eficiencia de uso de Git. Estas herramientas incluyen complementos, plugins, configuraciones de línea de comandos, personalización de la interfaz, entre otros. El objetivo es permitir una mejor integración con otros sistemas, automatizar tareas repetitivas, personalizar la visualización de la información, y tener un mayor control sobre los flujos de trabajo y las funciones de Git. Las herramientas de Git y personalización varían dependiendo de la necesidad y preferencia del usuario.
Etiquetado
El etiquetado en Git es una forma de marcar un punto específico en la historia de un repositorio de Git con una etiqueta legible y significativa. Estas etiquetas suelen usarse para marcar versiones específicas de software, como versiones estables o importantes, para que puedan ser recuperadas fácilmente en el futuro (Git, s.f.-a).
Las etiquetas en Git son inmutables, lo cual significa que, una vez creada una etiqueta, esta no podrá ser modificada. Esto permite a los desarrolladores volver a un punto específico en la historia del proyecto, con confianza, sabiendo que la versión etiquetada no cambiará con el tiempo.
Etiquetado en:
Fuente: Git. (s.f.-a). 2.6 Fundamentos de Git - Etiquetado.
Recuperado de https://git-scm.com/book/es/v2/Fundamentos-de-Git-Etiquetado
Esta pantalla se obtuvo directamente del software que se está explicando en la computadora, para
fines educativos.
El comando git tag lista las etiquetas en orden alfabético, no tiene importancia el orden en el que aparecen las etiquetas. Opcionalmente se puede buscar etiquetas con un patrón particular, Git (s.f.-a) sugiere el siguiente ejemplo: “el repositorio del código fuente de Git, por ejemplo, contiene más de 500 etiquetas. Si sólo te interesa ver la serie 1.8.5, puedes ejecutar:”
Buscar etiquetas con un patrón particular:
Fuente: Git. (s.f.-a). 2.6 Fundamentos de Git - Etiquetado.
Recuperado de https://git-scm.com/book/es/v2/Fundamentos-de-Git-Etiquetado
Esta pantalla se obtuvo directamente del software que se está explicando en la computadora, para
fines educativos.
En Git existen dos principales tipos de etiquetas, denominadas: ligeras y anotadas. Las etiquetas ligeras son similares a una rama que no se actualiza, sólo son un puntero a un commit específico. Por otro lado, las etiquetas anotadas se registran en la base de datos de Git como objetos completos.
Estas etiquetas contienen información como un checksum, el nombre del etiquetador, correo electrónico y fecha, un mensaje asociado, y también pueden ser firmadas y verificadas con GNU Privacy Guard (GPG). Se recomienda usar etiquetas anotadas para tener toda esta información disponible. Sin embargo, si se necesita una etiqueta temporal o no se requiere esta información, se puede utilizar una etiqueta ligera (Git, s.f.-a). A continuación, se explorará con mayor detalle las etiquetas en Git.
Etiquetas Anotadas
Las etiquetas anotadas en Git son una forma de etiquetar un momento específico en la historia de un repositorio Git. En lugar de simplemente marcar un punto en la historia de la rama actual, las etiquetas anotadas proporcionan una forma de agregar una nota a ese momento específico. Por ejemplo, puedes etiquetar una versión de tu proyecto con una nota que indique que es una versión estable o una versión de lanzamiento.
Para crear una etiqueta anotada, se usa el comando “git tag -a [etiqueta] [commit]” y luego se proporciona una descripción de la etiqueta. Las etiquetas anotadas son permanentes y no se mueven a medida que avanza la rama en la que se encuentran. Ejemplo:
Para crear una etiqueta anotada, se usa el comando “git tag -a [etiqueta] [commit]”:
Fuente: Git. (s.f.-a). 2.6 Fundamentos de Git - Etiquetado.
Recuperado de https://git-scm.com/book/es/v2/Fundamentos-de-Git-Etiquetado
Esta pantalla se obtuvo directamente del software que se está explicando en la computadora, para
fines educativos.
El parámetro “-m” especifica el mensaje de la etiqueta que es almacenado junto con ella, de no especificar el mensaje en una etiqueta anotada, Git abrirá el editor de texto por defecto para que lo escribas. Se puede ver la información de la etiqueta junto con el commit que se está etiquetando, utilizando el comando “git show” (Git, s.f.-a).
Etiquetas ligeras
Las etiquetas ligeras son una forma más simple de etiquetado, consta de un checksum de un commit guardado en un archivo en donde no incluye información. Para crear una etiqueta ligera no hay que pasar ningún parámetro al comando “git tag” (es decir, hay que omitir el -a, -s y -m). Observa el siguiente ejemplo:
Para crear una etiqueta ligera no hay que pasar ningún parámetro al comando “git tag”:
Fuente: Git. (s.f.-a). 2.6 Fundamentos de Git - Etiquetado.
Recuperado de https://git-scm.com/book/es/v2/Fundamentos-de-Git-Etiquetado
Esta pantalla se obtuvo directamente del software que se está explicando en la computadora, para
fines educativos.
Al igual que con las etiquetas anotadas, se pueden listar con “git show”, salvo que no se presentara la información adicional.
Etiquetado tardío
El etiquetado tardío es útil para etiquetar commits luego de pasar cierto tiempo sin hacerlo. Mira el ejemplo que propone Git (s.f.-a) en su documentación oficial:
Supón que tu historial de commits luce de la siguiente manera:
Supón que tu historial de commits luce de la siguiente manera:
Esta pantalla se obtuvo directamente del software que se está explicando en la computadora, para
fines educativos.
Imagina que olvidaste en su debido momento etiquetar tu proyecto en su versión hipotética v1.2, que corresponde al commit “updated rakefile”. Para etiquetarlo se debe especificar el checksum (o los primeros 7 caracteres, es decir la cadena “9fceb02”) de la siguiente manera:
Para etiquetarlo se debe especificar el checksum (o los primeros 7 caracteres, es decir la cadena “9fceb02”) de la siguiente manera:
Esta pantalla se obtuvo directamente del software que se está explicando en la computadora, para
fines educativos.
Con esto podrás visualizar el etiquetado como corresponde en el commit:
Visualizar el etiquetado como corresponde en el commit:
Esta pantalla se obtuvo directamente del software que se está explicando en la computadora, para
fines educativos.
Alias de Git
Un alias en Git es un atajo o apodo para un comando Git específico o para una secuencia de comandos. Permite a los usuarios ejecutar el comando o secuencia de comandos asociados con el alias con un nombre más fácil de recordar. Los alias se pueden definir en el archivo de configuración de Git, y se pueden utilizar en cualquier momento en la línea de comandos.
Ten en cuenta que Git no puede deducir el comando que deseas teclear de manera parcial o reducida. Para hacer uso de alias en Git debes establecer cada comando mediante git config. Git (s.f.-b) sugiere el siguiente ejemplo para comandos conocidos:
Para hacer uso de alias en Git debes establecer cada comando mediante git config:
Esta pantalla se obtuvo directamente del software que se está explicando en la computadora, para
fines educativos.
La manera de realizar una acción por medio de su alias es escribir su comando corto, es decir: luego de configurar (bajo el ejemplo anterior) el alias para realizar un commit, basta con escribir “git ci”.
Reescribiendo la Historia
Git es una herramienta que te permite cambiar tus acciones en el último momento. Mientras trabajas con Git, es posible que desees revisar tu historial por alguna razón. Git te brinda la capacidad de elegir qué archivos incluir antes de realizar un compromiso en el área de ensayo, decidir no trabajar en algo aún con el comando de alias o incluso reescribir confirmaciones previas haciéndolas parecer que se hicieron de manera diferente. Esto puede incluir: cambiar confirmaciones, modificar mensajes o archivos en un cometido, combinar o dividir confirmaciones, todo antes de compartir tu trabajo con otros (Git, s.f.-c).
A continuación, conocerás la teoría relacionada con este tipo de tareas que son muy útiles ya que, gracias a ellas, tu historial podrá aparecer del modo en el cual siempre quisiste compartirlo.
El primer cambio que se analizará es el cambio de la última confirmación, dicha acción es bastante típica ya que en muchas ocasiones se envía una confirmación del mensaje del commit con algún tipo de error. Para cambiar la confirmación del mensaje final basta con teclear el siguiente comando:
Para cambiar la confirmación del mensaje final basta con teclear el siguiente comando:
Esta pantalla se obtuvo directamente del software que se está explicando en la computadora, para
fines educativos.
Luego de introducir el comando, serás dirigido al editor textual el cual tiene la confirmación final para ser editada, basta con modificarlo escribiendo la nueva confirmación.
Cambiando la confirmación de múltiples mensajes
Para hacer cambios en una confirmación previa en tu historial de Git, debes utilizar herramientas más avanzadas. Aunque Git no cuenta con una herramienta específica para modificar la historia, puedes usar la función de “rebase” para reorganizar una serie de confirmaciones en el HEAD en lugar de moverlas a otro lugar. Con la opción interactiva de rebase, puedes detenerte justo después de cada confirmación que desees modificar y hacer cambios en su mensaje, agregar archivos o cualquier otra acción.
Para ejecutar un rebase interactivo, simplemente agrega el comando “-i a git rebase”. Además, debes especificar hasta qué punto deseas regresar para reescribir las confirmaciones, indicando cuál es la confirmación que deseas rebasar en el comando.
Por ejemplo, si deseas modificar las tres últimas confirmaciones o cualquiera de ellas, debes proporcionar un argumento para “git rebase -i” que especifique la confirmación que deseas modificar, que en este caso sería la última confirmación, HEAD2 o HEAD3. Es más fácil recordar HEAD~3 ya que estás tratando de editar las tres últimas confirmaciones, pero ten en cuenta que esto abarcará también la confirmación anterior a la última, es decir, cuatro confirmaciones atrás.
Modificar las tres últimas confirmaciones o cualquiera de ellas:
Esta pantalla se obtuvo directamente del software que se está explicando en la computadora, para
fines educativos.
Toma en cuenta que en el comando “rebase”, cualquier confirmación incluida en el rango de HEAD~3.HEAD será reescrita cambies o no el mensaje. No es recomendable incluir una confirmación que se haya enviado al servidor central, de hacerlo, esto confundirá a los demás desarrolladores ya que estás proporcionando una versión alternativa del mismo cambio (git, s.f.-c).
Reordenando Confirmaciones
Para reordenar confirmaciones en Git con “rebase”, debes seguir los siguientes pasos:
Es importante tener en cuenta que el rebase reescribe la historia de Git y puede causar problemas en los equipos. Por lo tanto, es recomendable usar rebase con precaución y solamente en repositorios locales antes de compartir tus cambios con otros.
Unir confirmaciones
Tomar series de confirmaciones y unirlas en una sola confirmación, se realiza de forma interactiva con rebase, o de forma no interactiva. A continuación, se explican las dos formas de hacerlo según Git (s.f.-c):
Es importante tener en cuenta que el rebase reescribe la historia de Git y puede causar problemas en los equipos. Por lo tanto, es recomendable usar rebase con precaución y solamente en repositorios locales antes de compartir tus cambios con otros.
Las herramientas de Git permiten hacer uso de Git de una forma más eficiente y personalizada. Ya sea a través de comandos personalizados, scripts de automatización, alias y otros; al personalizar tu experiencia de Git, podrás ahorrar tiempo, ser más productivo y lograr una integración más fluida con el resto de tus herramientas de desarrollo.
Ahora que concluiste el tema, tienes a tu disposición distintas herramientas y formas de personalización de Git, y podrás aplicarlas en tus proyectos para mejorar tus flujos de trabajo y optimizar tu productividad. Ahora que tienes estas habilidades, podrás profundizar en el uso de Git y seguir creciendo como desarrollador.
Asegúrate de:
Los siguientes enlaces son externos a la Universidad Tecmilenio, al acceder a ellos considera que debes apegarte a sus términos y condiciones.
Lecturas
Para conocer más acerca de Herramientas de Git y personalización, te sugerimos revisar lo siguiente:
Videos
Para conocer más acerca de Herramientas de Git y personalización, te sugerimos revisar lo siguiente: