5 tips en Git



@eduardo_gpg

Número de visitas 1008

Tiempo de lectura 4 min

4 Noviembre 2020

Git, es sin dudas el control de versiones mas popular que existe en la actualidad, y aprender a utilizarlo ya no es una opción.

Muy probablemente tú lo utilices en tu día a día si eres programador testing, DevOps o cualquier otra área relacionada al desarrollo de software.

Es por ello que en este vídeo me gustaría listar 5 tips, los cuales considero te serán de mucha utilidad al momento de trabajar con git. Tips, enfocados principalmente en la productividad y en el trabajo con terminal.

Bien, sin más que decir, comencemos.

Modificar mensaje

Imaginemos que llevamos horas codificando, y para terminar nuestro día laboral nos hace falta realizar un pequeño commit y push.

Pero, oh sorpresa, al realizar el commit hemos colocado el mensaje de forma incorrecta. Ya sea porque hemos olvidado algún signo de puntuación, nos hizo falta una letra o simplemente describimos de forma errónea los cambios.

Si esto te llegara a suceder no te preocupes, hay una forma de revertir el mensaje.

Para ello usaremos el commit en conjunto con la bandera --amend.

git commit --amend -m  “seguido del nuevo mensaje”

Y listo, con esto habremos re escrito nuestro mensaje, y nadie necesariamente debe enterarse de ello.

Agregar archivos no deseados

Y ahora, qué pasa si añadimos de forma accidental un archivo el cual no necesitaba estar dentro del commit. Quizás un archivo que se creó de forma no deseada, una imagen que se descargó en el sitio equivocado etc…

Pues bien, de igual forma que con el punto anterior, no te preocupes, todo tiene solución.

Para nosotros eliminar el archivo, una vez el commit se haya realizado, es decir cuando ya no nos encontremos en el working area si no en el staging área, entonces ejecutamos la siguiente serie de comandos.

Primero necesitamos realizar un reset.

git reset --soft sobre HEAD

Esto para revertir el commit añadido.

Posteriormente debemos quitar el archivo no deseado de git. Así que ejecutamos

git reset <nuestro archivo.extensión>.

Finalmente, pero no por ello menos importante, debemos eliminar el archivo del proyecto, o simplemente re ubicarlo, para así evitar nuevamente el problema.

rm  <nuestro archivo.extensión>.

Listo con esto sería más que suficiente para revertir los cambios y descartar el archivo no deseado. Por supuesto, será necesario crear un nuevo commit, ya que el anterior fue revertido.

Historial de cambios

Un comando muy utilizado para conocer el historial de cambios que ha tenido nuestro proyecto, es sin duda el comando log.

git log

Sin embargo, ¿sabías que es posible utilizar dicho comando con ciertas banderas?

Por ejemplo. Si ejecutamos el comando git log se nos desplegará toda la información sobre los últimos cambios realizados al proyecto, pero, qué pasa si solo queremos listar los últimos cambios mediante los hashes de los commit, pues bien para ello ejecutamos

git log --oneline

Estos nos desplegará la información, de hash y el commit. Lo cual, desde mi punto de vista, nos da una salida mucho más fácil de comprender. Eso sí, con menos detalles.

Y, qué pasa si estamos trabajando de forma colaborativa, y queremos conocer tanto los merges como las nuevas ramas creadas.

Pues bien, si estás trabajando desde terminar git log tiene la solución.

Al ejecutar

git log --graph

podremos visualizar, de una manera mucho más amigable, todos los cambios que ha tenido nuestro proyecto.

Podremos conocer qué commits, merges y nuevas ramas se han creado, así como los responsables de dichas colaboraciones. Una línea del tiempo en toda la expresión de la palabra.

Un comando y banderas que sin duda nos será de mucha utilidad.

Creación de ramas

Existen, principalmente, dos formas en las cuales nosotros podemos crear una rama a partir del último commit.

La forma más sencilla es mediante el comando branch.

git branch <nombre de la rama>

Una vez hecho esto, tendremos que re ubicarnos a la rama recién creada. Pera ello nos apoyamos del comando checkout.

git checkout <nueva rama>

Esto funciona, sin embargo, para poder comenzar a trabajar sobre una nueva rama tendremos que ejecutar 2 comandos, lo cual puede ser algo tedioso. Es por ello que una forma mucho más sencilla de crear una nueva rama, y posicionarse sobre ella, es a través del comando checkout, utilizando la bandera -b.

git checkout -b <la nueva rama>

Mediante la bandera -b le indicamos a git que, en dado caso la rama no exista, se procesada a crear, para posteriormente moverse sobre ella.

Un comando super útil para mejorar nuestra productividad.

Eliminar y renombrar ramas

Y hablando de ramas, si en caso nosotros deseamos renombrar alguna de nuestras ramas, sepamos que podemos hacerlo

Basta con utilizar el siguiente comando

git branch -m <nuevo nombre>

Para ello, por supuesto, debemos estar posicionados sobre la rama a modificar.

Y, para mantener un espacio de trabajo limpio, lo recomendable es siempre eliminar las ramas cuando ya no haremos más uso de ellas.

Para ello ejecutamos el siguiente comando.

git branch -D <rama a elimimar>

y listo.

Ojo, recuerda, siempre que se trate de eliminar una rama, es necesario estar cien por ciento seguros de lo que vamos hacer, ya que una vez la rama haya sido eliminada no habrá forma de recuperarla y perderemos todos los cambios de forma permanente, así que mucho cuidado.

Diferencias entre versiones

Y listo, llegamos al último punto, diferencias entre versiones.

Y para ello me gustaría mencionar que es posible visualizar de forma detallada todas las diferencias que existen entre un commit y otro, esto principalmente para nuestros archivos.

La forma más común de hacerlo es mediante el comando diff.

git diff <hash1> <has2>

Este comando nos mostrará, mediante un formato patch, todas las diferencias que existan entre un commit y otro.

Esto funciona muy bien, sin embargo sabías que git nos permite utilizar el comando diff tool para visualizar estos cambios de forma un poco más visual

Al utilizar difftool no solo sabremos qué líneas de código fueron modificadas, sino que tendremos un panorama mucho más amplio del estatus del proyecto, pudiendo así crear estrategias para una mejora continua.


Conclusión

Listo, estos son algunos tips, y datos curiosos que quería compartir con todos ustedes. Espero les sean de mucha utilidad y puedan implementarlos en su día a día.

Y cuéntanos ¿ya conocías algunos de estos tips? ¿Cuál fue el que más le agrado? te gustaría compatir alguno más con la comunidad

Déjanoslo saber en la sección de comentarios.


¿El contenido te resulto de ayuda?

Para poder dejar tu opinión es necesario ser un usuario autenticado. Login

Más Tips y Ejercicios 🐍

Adquiere una subscripción PyWombat por tan solo $3 USD. al mes.

Conoce los beneficios de ser usuario premium:
Niveles desbloqueados: Ten accesos a todos los niveles de ejercicios. 🔓
Nuevo límite: Incrementa tu límite de ejercicios por semana. 🚀
Contenido único: Recibe semanalmente recursos exclusivos de Python (Videos, Artículos y Capitulos del libro PyWombat, comienza como desarrollador Python. 🐍