Guía rápida de GIT (a.k.a. GIT for dummies)

Hay tecnologías que se meten en tu vida, que no las quieres pero se meten en tus estudios, tu trabajo y no hay más remedio de lidiar con ellas con el mejor humor posible; en cambio, hay otras que se te cruzan por delante y te apetece incorporarlas a tu dia a dia desde el momento en que te enteras de su existencia.

GIT logo

Para mi, GIT pertenece a este segundo tipo de tecnologías. Hacía tiempo que tenía ganas de meterme a fondo en este sistema de control de versiones, así que he aprovechado mis primeros pasos en un lenguaje de programación nuevo para escribir esta pequeña guía (me la he escrito para mi pero espero que también os guste a vosotros :) ).

Instalación

Para instalar las herramientas básicas de GIT en Ubuntu (probado en 11.04) sólo hace falta ejecutar el siguiente comando en el terminal.

sudo apt-get install git-core git-gui git-doc

En principio no vamos a utilizar la interfaz gráfica pero el paquete no ocupa mucho (y no estaba convencido que no tuviese que recurrir a ella durante los primeros días).

Configuración de usuario

A nivel de identificación de usuarios GIT no es diferente a otros sistemas de control de versiones. Éste require el envío del usuario que realiza según que acciones para poder implementar un control de acceso fiable (dependiendo del repositorio). Para proporcionar estos datos a todas las operaciones que realicemos desde un mismo equipo podemos ejecutar los siguientes comandos:

git config --global user.name "Nombre Apellidos"
git config --global user.email "alias@dominio.com"

La alternativa a esto es mandar el autor en cada operación con un parámetro extra peeero… no lo recomiendo, es mucho más cómodo esto y como tenemos cuidado de no ir revelando la contraseña de nuestro usuario (verdad? :) ) no vamos a tener problemas.

Creación del repositorio y primer “commit”

GIT, al ser un sistema de control de versiones distribuído, nos permite trabajar sin la necesidad de estar conectados a un servidor que alberga un repositorio central. De esta manera lo primero que debemos hacer es crear un repositorio en nuestra máquina (más tarde ya nos encargaremos de sincronizarlo con un servidor expuesto a Internet).

Para crear un repositorio en nuestra máquina bastará con la ejecución del siguiente comando. La primera vez recomiendo que esta operación se realice en un directorio vacío para controlar 100% como funciona, cuando hayamos adquirido más experiencia ya nos atreveremos a saltarnos pasos :)

git init

Hasta aquí fácil, verdad? Pues vamos a empezar a usar el control de versiones y sincronizarnos con un repositorio remoto.

Versiones en local y sincronización con servidor remoto

Una vez en marcha el repositorio local, crearemos un archivo en el directorio (para el ejemplo vamos a usar “file” como nombre del archivo) y haremos un commit local en nuestra máquina (no se envían a un servidor remoto de forma automática):

git add file
git commit -m "Nuestro primer commit"

NOTA: se sobreentiende que el fichero “file” lo tenéis que crear antes de ejecutar estos comandos.

Una vez creada la primera revisión vamos a sincronizarlo con un servidor remoto. Para realizar esta operación primero tenemos que decirle a GIT dónde encontrar este repositorio y que nombre vamos a utilizar para referirnos a él:

git remote add central usuario@servidor:path/repositorio.git

Antes de seguir vamos a analizar brevemente el comando. “git remote add” es el nombre entero del comando puesto que lo que queremos es añadir la dirección de un repositorio remoto a nuestro entorno de desarrollo, “central” es el alias que vamos a utilizar para referirnos al repositorio remoto y “usuario@servidor:path/repositorio.git” es el método que vamos a utilizar para acceder al repositorio (debemos tener en cuentra que los repositorios GIT son directorios como cualquier otro y que debemos utilizar sistemas como SSH o HTTP para acceder a ellos).

Cuando ya hemos definido como vamos a acceder y referirnos a él, ya podemos intentar sincronizar nuestras modificacione en local con el servidor remoto. Para eso mandaremos todos los cambios de nuestra rama a la rama del repositorio “central”.

git push -u central master

Igual que hemos hecho antes, vamos a analizar este comando por partes. “git push -u” básicamente lo que hace es enviar todos los cambios de una rama hacía otra y “central master” lo único que define es el destino y el orígen de los cambios que queremos enviar.

Cabe destacar que la rama principal que se crea al ejecutar “git init” se llama master. Este nombre se puede cambiar en el momento de la creación de repositorio pero es un valor por defecto que por lo que he podido observar se respeta bastante dentro de la comunidad de usuarios de GIT.

Y… esto es todo por hoy! Espero seguir ampliando esta breve explicación sobre GIT en los siguientes artículos pero no prometo nada. El trabajo, los estudios y otras ocupaciones se podrían entrometer :)

Espero que os haya sido de ayuda!!

2 thoughts on “Guía rápida de GIT (a.k.a. GIT for dummies)

  1. Hola Diego, “file” es simplemente cualquier fichero que quieras añadir al control de versiones.

    Saludos!

Leave a Reply

Your email address will not be published. Required fields are marked *