Introducción a Git

Para la gestión ágil de cualquier proyecto, independientemente del tamaño del mismo, es imprescindible el uso de un control de código fuente y sus versiones, a través de un sistema que permita a los equipos de desarrollo mantener una colaboración fluida, conservando un histórico de cómo evolucionan los fuentes y que simplifique al máximo  la resolución de “conflictos” cuando más de una persona ha editado un mismo fichero.

Durante muchos años el estándar de los sistemas de control de versiones ha sido de tipo centralizado (Centralized Version Control Systems o CVCS) donde un único servidor almacena todos los archivos versionados, y varios clientes se descargan en su local los archivos.

Frente a ellos, han aparecido en el mercado los sistemas de control de versiones distribuidos (Distributed Version Control Systems o DVCS) como Git, desarollado por Linus Torvalds, en los cuales los clientes tienen una copia íntegra del repositorio.

El objetivo de Git es el de ser un sistema de control de código fuente, de fácil uso, rápido y que simplifica la creación de ramificaciones de forma que el desarrollo no tenga por qué ser lineal.

El potencial de Git radica en la forma de modelar los datos, como un conjunto de instantáneas y no como una lista de cambios en los ficheros. A esto hay que añadir que la mayoría de las operaciones sólo necesitan ficheros y recursos locales.

Para entender el funcionamiento es importante que conozcas los tres estados posibles que puede tener un fichero:

  • Modificado: fichero editado pero no confirmado en tu repositorio local.
  • Preparado: fichero que has modificado y añadido para la confirmación.
  • Confirmado: fichero con cambios ya almacenado en tu repositorio local.

A continuación veremos los comandos básicos para empezar a trabajar con Git.

$ git clone url [dirDestino]

Para descargarte una copia íntegra de un repositorio ubicado en la url y la posibilidad de especificar el directorio destino en dirDestino.

$ git status

Muestra los ficheros modificados o preparados.

$ git add –A

Preparar los ficheros modificados para la confirmación de los cambios.

$ git commit -m “Mensaje descriptivo”

Para confirmar los cambios preparados con el mensaje especificado.

$ git pull

Para traerte a local una copia del repositorio.

$ git push

Para poder subir los cambios confirmados al repositorio.

$ git log

Para ver el histórico de confirmaciones.

$ gitk

Abre un log con el histórico pero en un entorno visual.

$ git diff –cached

Podrás ver los cambios que llevas preparados.

$ git stash

Crea una copia provisional dejando limpia el área de trabajo.

$ git stash pop

Recuperar el guardado provisional.

$ git checkout develop

Cambiar a la rama con nombre develop.

Por tanto un flujo simple de trabajo sería el siguiente:

  1. Recuperar los cambios del repositorio ($ git pull).
  2. Crear o editar los ficheros.
  3. Prepararlos para la subida. ($ git add –A).
  4. Confirmarlo ($ git commit).
  5. Subirlos al repositorio para que sean visibles para el resto del equipo. ($ git push).

Para finalizar te dejo los siguientes enlaces a distintas herramientas que facilitan el uso de Git en Windows:

 Referencias:

Vanesa MatasVanesa Matas. Licenciada en Ingeniería Informática por  la Universidad Autónoma de Madrid. Empezó su etapa profesional  en el mundo web con PHP.  Posteriormente ha trabajado con tecnologías Microsoft y en 2011 se incorporó a la unidad de Soluciones Microsoft de Sogeti España. Desde entonces trabaja como analista programador en el desarrollo de aplicaciones .Net.

Autor: ITblogsogeti

Sogeti es una compañía tecnológica perteneciente al Grupo Capgemini y especialista en: Testing y Calidad de Software; Soluciones Microsoft y High Tech Consulting. En Sogeti entendemos la importancia de obtener el máximo valor empresarial de sus sistemas de IT, por ello somos líderes mundiales en Testing & QA.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

w

Conectando a %s