Introducción
Hace unos días publiqué una entrada introduciendo el sistema de control de versiones GIT. Voy a provechar esta entrada para explicar de una forma muy sencilla cómo instalarlo y empezar a trabajar con él.
Instalación en Linux
En Linux es muy sencillo de instalar, desde la propia página WEB nos muestran cómo instalarlo en varias distribuciones:
Distro | Comando para su instalación |
---|---|
Debian/Ubuntu |
|
Fedora |
|
Gentoo |
|
Arch Linux |
|
FreeBSD |
|
Solaris 11 Express |
|
OpenBSD |
|
Instalación en Windows
Debemos acceder al apartado de descargas: http://git-scm.com/downloads y obtenerr la versión de Windows. Es un sencillo programa de instalación en modo de asistente (el clásico siguiente-siguiente-siguiente).
Yo recomiendo marcar durante la instalación la opción “Git Bash Here” que nos permite a través del botón derecho del ratón abrir un shell (bash de mingw) en la carpeta que indiquemos. Resulta más cómodo.
Primeros pasos
Supongamos que trabajamos en un proyecto PHP, C u otro lenguaje de programación. Lo primero que hemos de hacer es situarnos en la carpeta raíz del proyecto (Ej: /home/user(projects/gitsample) y crear un repositorio. Si estamos en linux desde el terminal navegamos hasta la carpeta y en Windows con la opción del menú contextual “Git bash here” podemos abrir una consola en esa misma carpeta. Tecleamos los siguientes comandos:
$ git init $ git add . $ git commit -m "Estado inicial del proyecto"
¿Qué hemos hecho?
- Hemos creado el repositorio (git init, ver carpetas ocultas)
- Hemos añadido TODOS los ficheros/carpetas al repositorio (git add .). Es decir, le notificamos que los tenga en cuenta para cualquier cambio.
- Realizamos el primer commit del proyecto obteniendo una imagen de su estado inicial (git commit -m MENSAJE)
Conforme trabajemos podemos ir anotando todos los cambios diarios en el proyecto. Por ejemplo del siguiente modo:
$ git add . $ git commit -a -m "Fecha de hoy: Que cambios hice"
Pero, ¿qué pasa si un día me pongo a trabajar y “me cargo” el proyecto? ¿Cómo lo restablezco todo? ¿Cómo vuelvo a una versión anterior de un fichero? Existen varías formas, pero la más simple es esta (leer la documentación para conocer otros casos y opciones):
$ git reset --hard $ git reset /directorio/al/fichero/a/recuperar
Este es básicamente el día a día que se lleva a cabo con el control de versiones. En mi caso uso la herramienta gráfica SmartGIT para visualmente consultar todos los diff de los ficheros y como van evolucionando a través de los commit. Si bien es cierto que estos últimos meses trabajo con Aptana Studio y uso directamente algunas de sus herramientas gráficas para manejar GIT.
Proximamente
Otras de las características interesantes de GIT es la posibilidad de trabajar con repositorios distribuidos, ramas y tags. En futuras entradas hablaré de estas funcionalidades.
Referencias
- Git sitio WEB oficial: http://git-scm.com/
- Manual de referencia de Git :http://git-scm.com/docs
- Guía rápida muy útil:http://www.edy.es/dev/docs/git-guia-rapida/
- Blog oficial de GIT: http://git-scm.com/blog