Manual rápido de GIT – Aprende a usar Git en 10 minutos « Devthisblog

Devthisblog Desarrollo .net, Diseño Web, Seguridad… Y todo lo que se me vaya ocurriendo…

agosto 24, 2014

Manual rápido de GIT – Aprende a usar Git en 10 minutos

Filed under: Programación,Uncategorized — Etiquetas: , — jnavero @ 8:37 pm

En este post voy a exponer la forma más rápida de comenzar a utilizar GIT bajo Linux Ubuntu 14.04, en Windows es muy similar a excepción de la instalación.

Git es un sistema de control de versiones distribuido y muy potente. Sinceramente, en 10 minutos es imposible aprender a usarlo, pero, si podremos ver la base y aprender su funcionamiento desde línea de comandos.

Para no entretenerme más, voy al lio, espero que resulte como una pequeña guía para comenzar a usar GIT.

Instalación de GIT:
Para instalar GIT en Linux vamos a la consola y tecleamos:

 Bash | 
 
 copy code |
?

1
apt-get install GIT

Recuerda que necesita permisos para usar el gestor de paquetes.

Una vez tenemos instalado GIT, necesitamos configurar ciertas cosas como nuestro nombre y correo electrónico, de esta forma podrán identificar la persona que ha realizado los cambios, esto se hace con los siguientes comandos:

 Bash | 
 
 copy code |
?

1
2
git config --global user.name "Nombre Usuario"
3
git config --global user.email "correoElectronico@dominio.com"
4

Con esto ya tenemos configurado el mínimo necesario para comenzar a usar GIT.
Si queremos usar un servidor de repositorios como GITHUB debemos hacer un par de configuraciones adicionales (en otro post indicaré como hacerlo en muy pocos pasos).

Crear un repositorio.
Un repositorio es el contenido de un proyecto.
Para inicializar un repositorio, simplemente nos situamos en el directorio (carpeta en Windows) que queramos que sea nuestro repositorio y tecleamos el comando:

 Bash | 
 
 copy code |
?

1
git init

Este comando inicializará nuestro repositorio (crea un directorio oculto en Linux llamado .git) con esto podemos empezar a trabajar con GIT.

Con GIT es posible clonar un repositorio para trabajar con él. Este repositorio puede estar en un ordenador, en una red local o en internet podemos clonar el repositorio con el siguiente comando:

 Bash | 
 
 copy code |
?

1
git clone https://github.com/jnavero/IoCSpringExample

Con este comando, podrás clonar el proyecto arriba mencionado y descargarás todo el conjunto de cambios realizado en el mismo. Hay que tener en cuenta que si descargamos un proyecto muy grande, según la línea de internet que tengamos tardará mucho tiempo en descargarse.

Llegados a este punto me toca explicar un poco el ciclo de vida de GIT.

Primero, tenemos los archivos del proyecto en la carpeta de trabajo, para poder mantener estos archivos en GIT es necesario que lo metamos en el Stage.
El Stage es un área temporal en el que están los archivos con cambios pero aún no hemos realizado el commit.
Es decir, tenemos los archivos en el directorio de trabajo, realizamos las operaciones correspondientes como pueden ser:
añadir, modificar o eliminar archivos estas operaciones quedan en el Stage y después para guardar todos los cambios se realiza un commit.
Este commit lo que hace es confirmar los cambios que hemos realizado y que se encuentran en el Stage.

Los comandos a destacar aquí son los siguientes:

 Bash | 
 
 copy code |
?

1
2
git add archivo #Nos sirve para añadir un archivo al Stage
3
git add . #Añade el directorio al Stage
4
#otras opciones con add puede ser -A 
5
git add . -A #que añade todo con subcarpetas incluidas.
6

Con el comando:

 Bash | 
 
 copy code |
?

1
git status

Podremos ver los cambios que hay y que podemos aceptar haciendo un commit.

Cuando hemos terminado de realizar los cambios, con el comando git add los ponemos en el Stage y pasamos a enviarlo usando el comando:

 Bash | 
 
 copy code |
?

1
2
git commit -m "Comentario de texto"
3
#con este primer commit metemos un comentario básico de los cambios que se han realizado.
4
git commit
5
#Si escribimos esto, nos abrirá un editor de texto con todas las líneas entre almohadillas. Estas almohadillas son comentarios y GIT las ignora.
6

Es recomendable que la primera línea del comentario no supere los 50 caracteres ya que se trata del resumen de los cambios y podremos verlo con el log.
Además el resto de las líneas es mejor que no superen los 72 caracteres para mantener una compatibilidad y pueda verse en cualquier editor sin ningún problema.

Si seguimos viendo comandos, el próximo es para poder ver los logs que provocan los commits. Existen dos formas principalmente:

 Bash | 
 
 copy code |
?

1
2
git log
3
#nos muestra todo el conjunto de cambios con todas las descripciones existentes. Podemos movernos con los cursores y salir con la tecla q
4
git log --oneline
5
#muestra el conjunto de cambios, un cambio por línea y solamente, muestra la descripción que es la primera línea que indicábamos que debería ser de no más 50 caracteres.
6

Para eliminar el fichero, eliminamos el fichero que deseemos del directorio de trabajo y usamos:

 Bash | 
 
 copy code |
?

1
2
git rm ficheroABorrar
3

Después de la operación podemos hacer un commit y de esta forma aceptamos el cambio. Por otro lado, si lo que deseamos es mover el archivo, simplemente se mueve el archivo desde línea de comandos con mv en Linux, y con git, como no hay comando de mover, lo único que hacemos es eliminar el archivo con git rm y añadir el nuevo con git add.
GIT detecta que ese archivo ya existía y lo toma como que se ha movido de lugar.

Como siempre con git commit podemos guardar los cambios.

Que sería de nosotros si no pudiésemos volver a una versión anterior.
Para volver a una versión anterior podemos utilizar el comando

 Bash | 
 
 copy code |
?

1
2
git checkout -- NombreArchivo
3
#esto nos retorna a la versión anterior.
4

Pero, si no deseamos volver a la versión anterior, si no que deseamos ver lo que sucedió hace tres versiones, viendo el log que generamos anteriormente
 Bash | 
 
 copy code |
?

1
2
git log --oneline
3
#nos indica un código y la descripción.
4
#con este código podemos desplazarnos a la versión deseada de la siguiente forma:
5
git checkout "codigoLog"
6
#así podremos ver el código de esa versión concreta.
7

 

Para que no resulte un engorro buscando el código en el log podemos utilizar alias en cada uno de los commit para crear un alias usamos el comando siguiente:

 Bash | 
 
 copy code |
?

01
02
git log --oneline
03
#nos indica un código y la descripción del commit
04
git tag "Alias" "codigoLog"
05
#añadimos un alias a ese código del log
06
git tag "Alias" "
07
#añadimos un alias al código que estamos usando actualmente
08
git tag
09
#nos muestra una lista de los tag que tienen nuestros commit
10
git checkout "Alias"
11
#vuelve a la versión que indica el alias indicado. Nos lleva a un estado anterior.
12

Por ultimo lo más importante, cuando el proyecto está alojado en un servidor podemos agregar código y traernos código de este servidor para agregar un lugar remoto usamos el comando

 Bash | 
 
 copy code |
?

1
2
git remote add origin git@github.com:...
3
#en otro post mostraré como conectar git a github (es muy sencillo pero por motivos de espacio no lo pongo aquí).
4

A partir de aquí, podemos enviar o recuperar cambios del lugar remoto con los comandos:

 Bash | 
 
 copy code |
?

1
2
git push origin master 
3
#envía los cambios de origin (creado arriba) a la rama master
4
git pull origin master
5
#descarga los cambios del servidor.
6

Es importante obtener la última versión actualizada del repositorio para no tener problemas entre diferentes versiones del código.

Quedan pendientes muchísimos comandos, pero los básicos para comenzar creo que están aquí comentados.
Algunos de los comandos que me quedan pendientes y son importantes son:

 Bash | 
 
 copy code |
?

1
2
git branch RAMA
3
#se crean ramas del proyecto, muy útil para hacer características, versiones u otro tipo de posibles cambios en el proyecto
4
git merge RAMA
5
#Hace un merge de la rama y crea un commit, esto puede ser un poco peligroso por los posibles conflictos
6
#para solucionar los conflictos debemos editar los archivos con un editor, eliminar unas marcas como <<<<<<<<< HEAD y ===========
7
#una vez corregido, se guarda y se envía otra vez con el commit.
8
 
9

Recomiendo la lectura del manual de Git en Español

Nos leemos próximamente.

No hay comentarios »

No comments yet.

RSS feed for comments on this post. TrackBack URL

Leave a comment

Powered by WordPress