Terminal Comandos Git

Comandos básicos de Git

Gilberth Monge 1 de Mayo de 2020

¿Qué es Git?

Git es un software de control de versiones que nos facilita, en el terreno de programación, tener distintas versiones del código que estemos realizando, no obstante, puede facilitar la vida a otras áreas como lo son para los diseñadores gráficos, entre otros.

Además nos permite distribuir nuestros proyectos con otras personas permitiendo así el desarrollo en equipo, y reduciendo la cantidad de fallos generados por la implementación de cambios por nuestra parte o la de alguien más.

Git tiene una gran variedad de funcionalidades, para hacer el uso de ellas se debe usar una serie de comandos, en el presente post pretendo dar un vistazo de los comandos que considero básicos para una implementación sencilla de Git

Iniciar un proyecto

Para iniciar un repositorio en nuestro proyecto de desarrollo lo único que debemos hacer es ejecutar el comando init:

$ git init

Guardando los cambios

Para hacer que el Git registre los cambios realizados sobre el código, dichos cambios deben ser guardados en el proyecto.
Para realizar el guardado se puede dar uso de varios comandos, los cuales nos pueden ayudar de conocer el estado del proyecto.

Saber los archivos modificados

Para saber los archivos modificados en la rama actual se puede usar status, esto nos da la información sobre cuales archivos se han modificado, agregado o incluso eliminado:

$ git status

Agregar cambios al proyecto

Una ves que verifiquemos los archivos que han sufrido cambios, procedemos a confirmarlos en el proyecto Git mediante el comando add.
Para confirmar todos los archivos se debe utilizar el siguiente comando:

$ git add -A

En caso de que solo se requiera confirmar un archivo y descartar los demás se debe utilizar el comando y el nombre del archivo:

$ git add archivo_cambiado.md

Confirmar cambios

Para terminar de guardar los cambios en se debe realizar un commit y se le debe de agregar un comentario con la bandera -m:

$ git commit -m "Comentario de confirmacion de cambio"

Arreglando comentario del commit

En ciertos momentos es necesario realizar la corrección del comentario realizado para ello se puede volver a usar el comando commit junto con la bandera --amend:

$ git commit --amend -m "Comentario de confirmación de cambio"

Revisando log de commits

Se puede visualizar toda la información de los commits anteriores se puede utilizar el comando log:

$ git log

Ramas

Una de las mejores utilidades que posee Git son las ramas, en ella podemos realizar una copia de nuestro proyecto dentro del mismo, permitiendo así realizar nuevos cambios sin comprometer el código que se encuentra funcional o incluso realizar pruebas.
En caso de que los cambios realizados afecten el proyecto simplemente se puede descartar simplemente eliminándolos.

Rama principal

Todo proyecto Git al inicio posee una rama que se establece por defecto, llamada master, sin embargo, es posible hacerse de otras ramas para llevar control de cambios o para el desarrollo de diferentes personas.

Creación de una rama

Para crear una rama se debe digitar branch seguido por el nombre de la rama:

$ git branch nuevos_cambios

Mostrando las ramas

Se puede visualizar las ramas que posee el sistema con el siguiente comando:

$ git branch -a

De esta manera se mostraran todas las ramas incluyendo las ramas ocultas del proyecto.

Intercambiando entre ramas

Para realizar trabajos en diferentes ramas es necesario que se realice el intercambio en el proyecto para ello se debe digitar checkout y el nombre de la rama que se desea seleccionar:

$ git checkout nuevos_cambios

Además de poder intercambiar entre ramas nos permite también intercambiar entre los diferentes commits que se han realizado, cambiando el nombre de la rama por el hash que de identificación del commit deseado:

$ git checkout 2057284bb626344f5bffd299e04fc6cb8f96ab6e

En ocasiones ésta funcionalidad es requerida si deseamos deshacer cambios con mayor antigüedad.

Eliminando una rama

En ciertos casos se requiere eliminar una rama por diversas razones, ya sea que no es necesaria o porque los cambios no surgieron como lo deseáramos.
Para eliminar una rama se debe digitar branch -D y el nombre de la rama a eliminar

$ git branch -D nuevos_cambios

Combinando ramas

En el momento que los cambios sean aprobados se puede proceder a combinarlos con la rama de producción u otra que lleve el control general antes de ser aplicados en la versión final para ello se debe posicionar en la rama que se desea que acepte el merge, una ves que se tenga activa la rama deseada, se debe unificar con la que recibió los nuevos cambios por medio del comando merge y seguido por el nombre de la rama:

$ git merge nuevos_cambios

Conectando con repositorio remoto

Hay varios servicios para llevar sus repositorios Git en remoto entre los más conocidos encontramos:

  • Github
  • Gitlab
  • Bitbucket

Conectando con repositorio

Una vez que haya creado su repositorio en su plataforma preferida podrá conectar el proyecto local al remoto mediante el siguiente comando add junto con el nombre que se le desea dar y la url que brinda la plataforma.
El nombre más común es origin.

$ git remote add origin URL_Plataforma

Visualizar repositorio remoto

Ya que se permite agregar diferentes repositorios remotos es importante poder visualizarlos mediante el comando -v:

$ git remote -v

Cargando repositorio local

Si hemos creado nuestro repositorio remoto con anterioridad y deseamos cargarlo al remoto se debe utilizar push añadiéndole el nombre que se le estableció junto con la rama que se desea cargar:

$ git push origin master

En ciertos momentos no solo queremos reflejar una rama sino todas las que poseemos, para ello podemos agregar la bandera --all en lugar del nombre de la rama:

$ git push origin --all

Descargar actualizaciones desde remoto

Para descargar las actualizaciones realizadas por compañeros o en otra computadora que se encuentren cargados en el repositorio, se debe utilizar el comando fetch y el nombre del repositorio requerido:

$ git fetch origin

Luego de haber descargado los cambios se debe aplicar en una rama del proyecto local por lo que se debe posicionar en la rama requerida y realizar el merge con la secuencia remoto/rama:

$ git merge origin/master

Descargar repositorio desde 0

Si ya poseemos un proyecto y deseamos iniciarlo en nuestra computadora o en otra que sea necesario trabajarlo debemos usar clone con ello se descargará el proyecto inmediatamente:

$ git clone URL_Plataforma

Eliminar referencia del repositorio

Si en algún momento se requiere que se desvincule el repositorio remoto del local que poseemos se puede realizar mediante el comando remove y el nombre que se le asignó:

$ git remote remove origin

Generar versiones y publicarlas

Si nuestro proyecto es abierto, es una librería como las muchas que se encuentran en GitHub es muy probablemente que requiramos generar versiones para que otros desarrolladores o usuarios finales puedan tener los últimos ajustes, para ello Git nos permite generar versiones “estables” de nuestro proyecto con el comando tag, además con la bandera -a le asignamos el nombre de la versión:

$ git tag -a vX.X.X -m "Mensaje de la versión"

Subir versión al repositorio remoto

Para poner a disposición nuestra versión más actual debemos cargarla a nuestra plataforma favorita con el comando push, pero indicando el nombre de la versión:

$ git push origin vX.X.X