Ramas en nuestro GIT


A continuación se presenta un pequeño tutorial de que son las ramas de desarrollo en GIT, como crearlas y cual es su utilidad a la hora de hacer un desarrollo pequeño o de gran tamaño.

Pero antes de comenzar en el tema se abre la brecha para la siguiente pregunta:

¿Qué es una rama de desarrollo en GIT?

Es simplemente un apuntador móvil  de confirmaciones. Cabe destacar que las confirmaciones en GIT la hacemos cuando hacemos cada uno de nuestro commit, GIT almacena un punto de control que conserva: un apuntador a la copia puntual de los contenidos preparados (staged), unos metadatos con el autor y el mensaje explicativo. La rama por defecto de GIT es la rama ‘master’.

¿Para que pueden ser útiles las ramas de desarrollo en nuestros proyectos?

Las ramas de desarrollo son de gran utilidad ya que nos permiten fragmentar nuestro proyecto de una manera adecuada para hacer el flujo de trabajo diario mas eficiente, al tener ramas de desarrollo podamos tener un control absoluto del crecimiento de nuestro proyecto, además nos permite visualizar los cambios que cada persona haga en el mismo. Así mismo nos brinda la posibilidad de recuperar funcionalidades que por cualquier motivo se allá borrado y nos veamos en la necesidad de devolver esos cambios, esto solo es posible hacerlo de una manera eficiente si poseemos nuestro control de versiones. GIT es considerado unos de los mejores CVS para para la realización de estas restauraciones de funcionalidades en nuestros proyectos.

¿Como crear una rama en GIT?

Para crear nuestra primera rama en GIT solo debemos colocar el siguiente comando en nuestra consola o terminal.

git branch desarrollo 

Con el comando que se mostró anteriormente podemos crear nuestras ramas de desarrollo las cuales pueden tener el nombre que necesitemos. Existe otro método para crear nuestras ramas de desarrollo un atajo al comando anterior ya que este nos permite crear nuestra rama pero también ingresar a ellas, sin más preámbulo veamos cual es el atajo:

git checkout -b prueba

Como se menciono anteriormente el comando git checkout -b prueba nos permite crear una nueva rama y así mismo ingresar a ellas, para la actualidad ya deberíamos de tener 3 ramas creadas, una que se crea por defecto y otras dos que hemos llamado desarrollo y prueba. Ahora como puedo consultar cuantas ramas tengo creadas en mi proyecto, para hacer esto podemos hacerlo con el siguiente comando:

git branch

El siguiente comando nos arroja una salida como esta en la cual nos muestra nuestras ramas y con un * nos muestra en que rama nos encontramos trabajando.

Ejecución del comando git branch

Ejecución del comando git branch

Como vimos anteriormente el comando git branch nos muestra las ramas algo bastante útil, ya que sabemos cuantas ramas tenemos y como vemos en la imagen nos muestra en cual nos ubicamos trabajando con el * ahora  como movernos entre nuestras ramas, para esto GIT dispone del siguiente comando:

git checkout <nombre de la rama> Lo cual arroja una salida como esta:

Ejecución del comando git checkout

Ejecución del comando git checkout

Con esto hemos logrado movernos entre nuestras ramas de desarrollo, y para prueba de ello haremos un git branch

git branch pruebas, verificación de rama

git branch pruebas, verificación de rama

A este punto ya hemos creados ramas, nos hemos ubicado en cada una de ellas pero ahora veremos como realizar un pequeño flujo de trabajo con nuestras ramas para este ejercicio trabajaremos con nuestras 3 ramas, para así lograr crear archivos nuevos en cada una de nuestras ramas y fusionarlas entre si.

Recuperar toda la información de nuestro repositorio

Para esto solo debemos hacer un git fetch el cual nos bajara toda la información de nuestro proyecto, normalmente con un git clone se trae una copia de nuestro repositorio pero este no contiene si no mas que una sola rama en este caso master, con el comando git fetch podemos traenos todas las ramas asociadas a nuestro repositorio

Para hacer esto solo debemos hacer un git fetch

Cabe destacar que esta rama solo va hacer de manera de lectura para alojar la rama a nuestro repositorio y que nos permita editarla solo debemos hacer:

git checkout -b <nombre de la rama> orirgin/<nombre de la rama>

 Ejemplo:

git checkout -b prueba origin/prueba

Con esto ya tendremos nuestra rama prueba en nuestro archivo local y de una manera editable.

Flujo de trabajo con GIT

  1. Observar en que rama nos encontramos con el comando git branch.
  2. Ubicarnos en nuestra rama pruebas con el comando git checkout.
  3. Crear un archivo con el nombre que quieras como ejemplo creare uno llamado: holaGit.html
  4. Colocar contenido en este documento, en este ejemplo haré un pequeño ejercicio con un archivo.html, puede usar cualquier contenido para esto.
  5. Agregar nuestro cambios a con un git add y los nombres de nuestros archivos.
  6. Hacer nuestro commit con un comentario bien estructurado.
  7. Publicar nuestros cambios con un git push origin <nombre de la rama> , para este ejemplo lo hare primero con la rama pruebas.
  8. Fusionar nuestras rama pruebas con desarrollo.
  9. Borraremos nuestra rama pruebas.

Manos a la obra..!!

Verificamos en que ramas nos encontramos con nuestro comando git branch si nos muestra una salida como esta debemos movernos a nuestra rama de pruebas, con el comando git checkout pruebas.

git brach verificación de nuestras ramas ejercicio.

git brach verificación de nuestras ramas ejercicio, en caso de no estar en la rama pruebas.

En caso de que nuestra salida sea como esta, simplemente debemos quedarnos allí ya que nos encontramos en la rama en la cual trabajaremos.

Rama de desarrollo pruebas

Rama de desarrollo pruebas

Excelente ahora dentro de nuestra rama pruebas podemos crear nuestro archivo holaGit.html con el contenido que deseamos , una ves finalicemos los cambios solo nos queda por agregar nuestro cambios con el comando git add + <nombre de archivoS>, luego de esto hacemos nuestro típico git commit -a -m “Mensaje que quieras dejar de referencia, se recomienda hacer un comentario adecuado a la modificación que realizaste” en la siguiente imagen se visualiza un poco mejor esto:

Haciendo un git add y un commit a pruebas

Haciendo un git add y un commit a pruebas

Subir mis cambios a la rama pruebas?

Para subir estos cambios solo tenemos que cambiar el origen de nuestra rama por defecto siempre para publicar nuestros cambios realizamos un git push origin master, pero en este caso le cambiaremos el nombre de nuestra rama ejemplo git push origin pruebas, con esto subiremos nuestros cambios al servicio que tengamos afiliado nuestro repositorio.

Fusionar mi rama de pruebas con desarrollo

Para esto solo tenemos que movernos a nuestra rama desarrollo con el comando git checkout desarrollo, para verificar si realmente estamos en la rama correcto solo hacemos un git branch, ahora bien como fusionar nuestra rama de desarrollo con la de pruebas, para esto usamos el comando git merge dentro de nuestra rama haciéndole llamado a la rama que queremos unir, la sintaxis de este comando es git merge + <rama que queremos fusionar> y con esto nuestras ramas quedaran fusionadas, cabe acotar que en este proceso se pueden presentar conflictos los cuales los podremos corregir con nuestro editor favorito. A continuación se muestra una salida típica de un git merge.

en la rama desarrollo

git merge en la rama desarrollo

Con esto ya tenemos una idea como se manejan las ramas de desarrollo en GIT, ahora bien ente gran CVS nos permite crear tantas ramas de desarrollo necesitemos, esto abre la posibilidad de crear ramas volátiles las cuales las usaremos por un tiempo determinado es decir hasta que el error este solucionado, GIT por defecto le permite  crear tantas ramas necesite cosa que es de mucha utilidad ya que nos permite definir ramas por cada error que se nos presente y cuando estos ya estén solucionados y unificados con nuestras ramas serán eliminadas. Imaginemos que llevamos somos un grupo de programadores lo cuales tienen módulos determinados por persona y esto a su vez se presenta un error el cual es notificado al programador que realizo ese determinado modulo para que solucione dicho problema, el programador puede crear una rama volátil la cual puede usar para solventar dicho problema y una vez este solucionado y fusionado en nuestra rama principal el tendrá la libertad de eliminar esa rama.

Para eliminar una rama solo debemos hacer el siguiente comando git brand – d +< el nombre de la rama que queremos eliminar>, en este caso eliminaremos nuestra rama pruebas lo cual arroja una salida como esta:

git branch -d

Eliminando ramas

Enlaces de interés.

http://git-scm.com/book/es/Ramificaciones-en-Git

 

 

 

Anuncios

Acerca de abdsp22

informatico,deportista

Publicado el octubre 7, 2013 en Noticias, Software Libre y etiquetado en , . Guarda el enlace permanente. 3 comentarios.

  1. Reblogueó esto en El Mundo Tecnológicoy comentado:

    Ramas en nuestro GIT

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 )

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 )

Google+ photo

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

Conectando a %s

Abrelata

Un sitio WordPress.com bueno

Desde Linux

Desde Linux: Usemos Linux para ser libres

Pregúntale Al Gabo

Música, Software y Base de Datos

Leninmhs

Un cajón de software y conocimiento libre

BlogZing

El sitio de las Pic y de los Gif animados

InfoWeb

Eventos, Lanzamientos de Productos y mucho más...

real ultimate waffe (.net)

FACT: mdawaffes are mammals

Ambiente Tecnológico.

Creado para saber información tecnológica.

..:::Andres TheGreaTest Blog:::...

Just another WordPress.com site

ESTILOS DE MUSICA ROCK

GUITARRAS ELECTRICAS

¡Misiles Diplomáticos!

Blog de todo y de nada a la vez. Lee y verás por qué.

The WordPress.com Blog

The latest news on WordPress.com and the WordPress community.

A %d blogueros les gusta esto: