En esta serie de posts vamos a conocer Git a través de su libro oficial escrito por Scott Chacon. Git es un sistema de control de versiones distribuído que nos permitirá gestionar los cambios de los archivos de un proyecto y también compartirlo con el resto de integrantes de nuestro equipo de trabajo. Aunque se trata de una herramienta pensada para equipos de trabajo, una sola persona también se puede beneficiar de ella gracias a la gestión del versionado del código, ya que siempre podrá recuperar el trabajo que hizo con anterioridad.
Los sistemas de control de versiones distribuídos (dVCS, en sus siglas en inglés) se diferencian de los clásicos sistemas de control de versiones centralizados (cVCS) en el hecho de que mientras que en éstos últimos existe un servidor en el que se guardan todos los cambios (versiones) que afectan a los archivos, en los distribuídos dichos cambios se guardan (se «copian») en todos los equipos que participan en el proyecto. Así, si el servidor en el que se guardan los repositorios explota (y también las copias de seguridad), se podría volver a reconstruir el repositorio original a partir de cualquiera de las «copias» que hay distribuídas en el resto de equipos cliente.
Instalación de Git
Git está disponible tanto para Linux, como para Mac o Windows. Aquí detallo las maneras más sencillas de hacerlo. Para más información de las formas disponibles de instalación, echad un ojo en este enlace.
Instalar Git en Linux
La forma más sencilla es instalarlo desde los gestores de paquetes, por ejemplo para Ubuntu u otras distribuciones basadas en Debian:
$ sudo apt-get install git-core
O Fedora:
$ yum install git-core
Instalar Git en Windows
Para instalar Git en Windows, simplemente tendremos que ir a la dirección https://msysgit.github.io, donde podremos descargarnos el instalador.
Instalar Git en Mac
Al igual que en Windows, instalar Git en Mac es bastante sencillo: solamente debemos descargarnos el instalador desde la dirección https://git-scm.com/download/mac.
Configuración de Git
Una vez hemos instalado Git, deberemos personalizar nuestro entorno. Para ello, Git tiene una herramienta llamada git config que permite obtener y establecer las variables de configuración, pudiendo así personalizar la forma en que Git va a operar. Dichas variables de configuración se pueden guardar en tres sitios diferentes, en forma de archivo:
-
/etc/gitconfig, donde se guardan los valores de configuración para todos los usuarios y repositorios. Se puede leer y escribir directamente a este archivo con el parámetro –system.
- ~/.gitconfig, archivo con la configuración específica del usuario. Podemos acceder directamente a él con la opción –global.
- Carpeta Git (en .git/config), es decir, en una carpeta local cualquiera que sea un repositorio de Git. En este caso, el archivo .git/config guarda la configuración específica para el repositorio en el que nos encontramos.
(Nota: En el caso de Windows, la ruta del archivo de configuración de sistema se encuentra en la ruta de instalación de Git, mientras que la de la configuración de usuario se guarda en nuestra carpeta personal.)
Cada nivel sobreescribe al anterior, es decir que si establecemos una configuración a nivel de carpeta (.git/config), se utilizará ésta en lugar de la específica de usuario o del sistema.
Configurar tu identidad
Para ver cómo establecer una opción de configuración, vamos a configurar nuestro nombre de usuario y password a nivel de usuario
$ git config --global user.name "Perico Palotes" $ git config --global user.email ppalotes@dominio.com
Visualiza tu configuración
Para visualizar la configuración, basta con repetir el mismo comando visto anteriormente, pero sin pasarle ningún valor:
$ git config --global user.name Perico Palotes
$ git config -l user.name=Perico Palotes user.email=ppalotes@dominio.com
Otras variables de configuración
$ git config --global core.editor vi $ git config --global merge.tool vimdiff
Y con ésto damos por terminado el capítulo de instalación y configuración de Git. En el próximo capítulo veremos cómo crear un repositorio, cómo clonarlo y cómo añadir archivos y gestionar los cambios.