Publicidad

RSS control de versiones

Visual Studio ALM Rangers: gestión del ciclo de vida en TFS y Git

2 Comentarios
Visual Studio ALM Rangers: gestión del ciclo de vida en TFS y Git

Los Visual Studio ALM Rangers son destacados miembros de la comunidad técnica de Microsoft que utilizan su tiempo libre para, en conjunto con los MVP y especialistas de todo el mundo, dedicarse a construir una guía extensa y profunda de los conceptos y estrategias a implementar con las características ALM de Visual Studio.

Desde 2006 están publicando de forma periódica estos documentos, que en gran parte pueden ser aplicados en cualquier sistema de Gestión de Ciclo de Vida, y acaban de anunciar la última revisión para su descarga: Guía de control de versiones.

Leer más »

Manos en la masa, haciendo crecer nuestro árbol del repositorio de código

14 Comentarios
Manos en la masa, haciendo crecer nuestro árbol del repositorio de código

Este es el tercer capítulo de la miniserie sobre Branching. Que se ha compuesto de Labeling, Branching y este, Manos en la masa. Y que trata sobre técnicas de división del desarrollo en el repositorio de código que nos haga más fácil el manejar la complejidad inherente a toda construcción de aplicaciones de software.

Este ejemplo lo voy a mostrar en Visual Studio 11 beta contra un Team Foundation Service, pero es muy similar el realizarlo en Git, Mercurial o SVN. Lo importante no es la herramienta, si no tener claro que el uso de estas técnicas nos hace crecer en la madurez de nuestros equipos y nos facilita y prepara para cuando las cosas se tuercen que es casi siempre.

Leer más »
Publicidad

Branching, haciendo crecer nuestro árbol del repositorio de código

4 Comentarios
Branching, haciendo crecer nuestro árbol del repositorio de código

En el artículo anterior de esta miniserie, estuve tratando sobre la necesidad básica de tener un repositorio de código. Y de una primera aproximación a la gestión más madura del trabajo por medio del etiquetado de versiones: labeling.

En esta segunda parte, final, quiero dar un paso adelante y describir una técnica de separación de las líneas de desarrollo en el repositorio de código fuente que nos ayude, en gran medida, a organizar la complejidad inherente a todo desarrollo en equipo.

Branching, dicho de forma espantosa sería algo como “rameando” o ir haciendo ramas, se utiliza en los repositorios de código. No es algo novedoso, ni mucho menos. De hecho, al menos desde los años 70 ya existen aplicaciones como CA Software Change Manager, que permiten hacer branching; mucho antes de que algunos de nuestros lectores hubiese, tan siquiera nacido.

Leer más »

Etiquetando,haciendo crecer nuestro árbol del repositorio de código

11 Comentarios
Etiquetando,haciendo crecer nuestro árbol del repositorio de código

Una de las cosas que más me sorprenden y escandalizan es la cantidad de empresas y compañeros que trabajan sin un repositorio de código. No conocen las virtudes de configurar un punto único en donde almacenar, versionar y recuperar las cientos o miles de horas/hombre invertidas en millones de líneas de programación.

Cuando toca juntar las fuentes de dos o tres personas es un auténtico dolor, pero la cosa se hace imposible cuando lo ha de realizar todo un equipo o departamento. Haciéndose una costumbre el perder código, o tener una árbol de carpetas de “copias de seguridad“ en el ordenador que se utiliza para hacer las publicaciones y que, generalmente, es el del líder del equipo.

Pero incluso cuando se establece, por fin, un repositorio de código, se trabaja continuadamente en un mismo tronco (trunk). El cual soporta las modificaciones y actualizaciones más variopintas. Sufriendo roturas a causa de errores o el no poder publicar hasta que se termine la decimonovena modificación o arreglo.

A estos equipos les invito a dar un paso en la escalera de la madurez del ecosistema y a leer esta serie que trata sobre la técnica de branching. Es decir, la forma de construir software alrededor de un núcleo estable, minimizando las causas de ruptura o de no disponibilidad.

Y que voy a iniciar con el etiquetado de las versiones.

Leer más »

Tags con Git

2 Comentarios
Tags con Git

addEventListener('load', function (event) { prettyPrint() }, false);

Anteriormente hemos hablado sobre el manejo de ramas con Git así como el Git stashing que nos permite guardar el estado de nuestros directorios de trabajo en cualquier momento para poder aplicarlo en la rama que queramos de forma sencila.

En Git, una etiqueta o tag sirve básicamente como una rama firmada que no permuta, es decir, siempre se mantiene inalterable. Sencillamente es una cadena arbitraria que apunta a un commit específico. Puede decirse que un tag es un nombre que puedes usar para marcar un punto específico en la historia de un repositorio.

Los tags pueden ser muy útiles para marcar hitos de progreso sobre todo si trabajamos con metodologías de desarrollo ágil. Si tenemos sprints semanales podemos marcar el estado del proyecto en la finalización de cada una de las iteraciones utilizando un nombre adecuado para ese momento en la historia del respositorio.

Leer más »

Stashing con Git

24 Comentarios
Stashing con Git

addEventListener('load', function (event) { prettyPrint() }, false);

La semana pasada hablábamos sobre el manejo de ramas de desarrollo con Git. Hoy voy a hablaros sobre el stashing con Git.

Stashing es un concepto super simple que es increíblemente útil y muy fácil de usar. Si estamos trabajando en nuestro código y necesitamos cambiar a otra rama por cualquier motivo o quizás hacer un pull en el repositorio, y no queremos hacer un commit de nuestro trabajo por que se encuentra en un estado parcial, podemos usar stashing.

Para usar Git stashing solo tenemos que ejecutar git stash que lo que hace es congelar nuestros cambios desde nuestro último commit y almacenarlos de forma temporal dejando nuestro diectorio de trabajo completamente limpio.

Leer más »
Publicidad

Manejo de ramas de desarrollo con git

10 Comentarios
Manejo de ramas de desarrollo con git

addEventListener('load', function (event) { prettyPrint() }, false);



Git es un sistema de control de revisiones distribuido amparado por la GPLv2 que enfatiza sobre todo la velocidad. Fue diseñado y desarrollado inicialmente por Linus Torvalds, creador de Linux como proyecto para mantener repositorios del kernel de Linux.

Cada directorio de trabajo git es un repositorio completamente funcional y con total capacidad independientemente de si existe acceso a la red y de un servidor centralizado, lo cual lo convierte en una poderosa herramienta tanto para el desarrollo de grupos de trabajo como para el desarrollo individual.

Git dispone de muchas características pero hoy voy a hablaros del manejo de ramas de desarrollo con git. Si estáis familiarizados con Github sabréis que la base de dicha red social de desarrollo es el “fork“ de ramas de desarrollo y su posterior “merge“. Git es treméndamente eficiente en ese aspecto.

Leer más »
Publicidad
Inicio
Inicio

Ver más artículos