GIT para principiantes

 ¿Qué es GIT?


GIT para Principiantes

En esta ocasión, vamos hablar sobre los conceptos básicos de GIT, para entender cómo es que este funciona y algunos de sus comandos básicos en caso de que seas nuevo con este tema y/o quieras reforzar los conceptos básicos de GIT.

> Historia

GIT es un control de versiones open-source para la gestión de desarrollos sin importar el tamaño del proyecto y así tener una administración de forma rápida, segura y eficiente.

Es el sistema de control de versiones por excelencia ya que cuenta con una comunidad muy extensa donde se comparte información de gran apoyo para seguir trabajando con esta herramienta.

Y si llegaste aquí por simple investigación para algún tema escolar, puedes echarle un vistazo al GitBook que puedes ubicar en esta ruta: https://git-scm.com/book/es/v2/Inicio---Sobre-el-Control-de-Versiones-Una-breve-historia-de-Git

Como muchas de las grandes cosas en esta vida, Git comenzó con un poco de destrucción creativa y una gran polémica.

 

> Primeros Pasos

Es muy importante recalcar que GIT es un repositorio local por lo cual no hay que confundirlo con GitHub.

Aquí una breve descripción de que es GitHub:

Es un portal creado para alojar nuestro código almacenado en algún repositorio local para que sea compartido a quienes nosotros queramos o sea público para todos los usuarios que entren a GitHub. Te recomiendo el siguiente post: https://www.xataka.com/basics/que-github-que-que-le-ofrece-a-desarrolladores

En palabras mortales: Es subir tu repositorio local a la nube para que sea accesible por aquellos que nosotros queramos.

 

>> Estados en GIT

El siguiente diagrama es lo más importante que debes recordar ya que será tu pan de cada día al trabajar con GIT


Como vez en el diagrama anterior, se tienen unos números que hacen referencia al flujo básico por el cual se pasa para llevar un archivo del Working Area al Repository. Este flujo será tu biblia para comenzar con GIT:

  1. Trabajas en tu objeto desarrollando lo necesario para que esté listo para ser enviado al repositorio.
  2. Una vez terminado el objeto, desde la consola de git es necesario indicar el comando git add donde podrás indicar el objeto a subir (“git add [nombreArchivo]”) o si quieres subir todo lo que tuvo cambiogit add .
  3. El resultado del comando anterior es mandar el archivo al área lógica para ya no ser tocado y estar listo para mandarlo al repositorio
  4. Se ejecuta el comando git commit –m “Descripción del cambio” para enviar el archivo al repositorio .git.
  5. El resultado del comando anterior, es mandar el archivo a la carpeta .git (Repositorio).

Working Area: Lo puedes relacionar con la carpeta en tu equipo en donde viven tus objetos que vas a ir trabajando para desarrollar tu producto y que en un futuro vas a mover para que se queden almacenados en el repositorio.

Staging Area: Es un área lógica propia de GIT que sirve como almacén previó de los archivos que haz indicado que quieres mover al repositorio local

Repository Area: Es el repositorio GIT, una vez que los objetos son enviados a esta parte, serán transformados en código hexadecimal y para poder ubicar tu archivo tendrás que tomar encuentra el hash que te muestra la consola de GIT después de hacer el comit o al mostrar el log de comits (lo veremos más adelante).

 

>> Configuración Básica

Como configuración básica para iniciar con GIT, es necesario especificar un nombre y correo en nuestro repositorio par tener un buen control de quien toco los objetos:

git config --global user.name "Tu nombre aquí"

git config --global user.email "tu_email_aquí@example.com"

 

 >> Crear tu primer Repositorio

Una vez configurado tu consola GIT, ahora podemos proceder a crear nuestro primer "Hola Mundo" en GIT, para esto, es necesario definir una carpeta dentro de tu equipo sin importar donde la ubiques, solo que sea fácil de recordar para tí.

Una vez creada dicha carpeta, es necesario posicionarnos en la carpeta desde consola o en la terminal donde estemos ejecutando GIT. 

 

 Dentro de la carpeta ejecutamos el comando git init lo cual nos dará como resultado un repositorio vació listo para ser gestionado por GIT.

 

 

> > Clonar Repositorio.

Por otro lado, si lo que queremos es empezar con un proyecto el cual nos fue proporcionado, es necesario utilizar git clone . Este comando nos permite clonar un repositorio el cual esta alojado en un repositorio cloud el cual puede ser publico y/o privado. Si el repositorio es privado es necesario que el dueño del repo nos otorgue los permisos y/o la key ssh para poder hacer el clone sin ningún problema.

La estructura base del comando es el siguiente:

git clone [Ruta del repositorio]

 

> Lista de Comandos Básicos

* Crear Rama

Este comando se utiliza para crear una rama a partir de la rama donde estamos posicionados.
git branch [nombreRamaNueva]

También es posible crear una rama a partir del comando utilizado para cambian de una rama a otra, solo sería necesario agrega -b para que se cree la rama y automáticamente se cambie a la rama recién creada:

git checkout -b [nombreRamaNueva]
 

* Cambiar de Rama

El siguiente comando es utilizado para brincar de una rama a otra dentro de nuestro proyecto:
git checkout [nombreRama] 
 

* Eliminar Rama

El siguiente comando es utilizado para eliminar una rama de nuestro proyecto. Para esto, es necesario no estar ubicados en la rama a elimiar:
git checkout -d [nombreRama]
 

* Fusionar Rama

El siguiente comando es utilizado para fusionar una rama dentro de otra.
Para indicar el destino de la fusión, es necesario realizar el comando posicionándonos en la rama donde se quiere obtener la unión de la otra rama:
git merge [nombreRamaAFusionar]

* Estado de cambios

Para listar y enumerar los archivos que han sufrido cambios y los que aun no han sido agregados o confirmados en nuestro proyecto:
git status

* Obtener historico de commit

El siguiente comando es utilizado para en listar todos los commit que han sido ejecutados dentro de nuestro proyecto:
git log
 
Se puede utilizar mas especificaciones para obtener una mejor visibilidad y lectura de la información mostrada.
  1. Mostrar Grafica: git log --graph
  2. Mostrar información resumida por commit: git log --oneline
  3. Se pueden combinar ambas configuraciones: git log --graph --oneline
 

* Cambios de repositorio local a publico (pull, push,fetch)

El primer comando es push. Este se utiliza para enviar nuestros cambios del repositorio local al publico:
git push

El segundo comando es pull. Este comando hace lo contrario a push, es decir, se trae lo que existe en el repositorio publico al local:
git pull
 
El tercer comando es fetch. Este comando actualiza en el repositorio local todas las ramas que existen en el repo publico y no en el local:
git fetch
 

 
 

Comentarios