Acerca de git-flow
+ ++ git-flow es un conjunto de extensiones para git que proveen comandos de alto nivel para operar repositorios para el model de ramificaciones de Vincent + Driessen. + más +
+★ ★ ★
+ +Este ayudamemoria de las operaciones básicas de git-flow explica los comandos y sus efectos.
+ +★ ★ ★
+Consejos básicos
+-
+
- Git flow provee una excelente ayuda en la línea de comando y e información. Lée con atención lo que sucede... +
- El cliente para OSX Sourcetree es una excelente GUI para git y tiene soporte para git-flow + +
- - Git-flow funciona basándose en conciliaciones (merge). No cambia utiliza cambios de base para la ramificación de características (branch rebase). +
★ ★ ★
+Configuración
+-
+
- Un prerequisito es una instalación de git en funcionamiento. +
- Git flow funciona en OSX, Linux y Windows +
★ ★ ★
+OSX
++ $ brew install git-flow ++
Linux
++ $ apt-get install git-flow ++
Windows (Cygwin)
++ $ wget -q -O - --no-check-certificate + https://github.com/nvie/gitflow/raw/develop/contrib/gitflow-installer.sh | bash ++
Necesitarás wget y util-linux al instalar git-flow.
++ Para instrucciones de instalación detalladas por favor visite la wiki de git flow +
+
Introducción
+Git flow necesita ser inicializado para poder alterar la configuración del proyecto.
+★ ★ ★
+Inicialización
+ +Inicie git-flow inicializándolo desde dentro de un repositorio git existente:
++ git flow init ++
+ Deberá contestar algunas preguntas relacionadas con las convenciones de nombres para las ramas.
+ Se recominda utilizar los valores predeterminados.
+
Características
+ +-
+
- Desarrolle características para futuras versiones +
- Es típico que sólo se use en los repositorios para desarrollo +
★ ★ ★
+ +Comenzar una nueva característica
+El desarrollo de nuevas características comienza en la rama 'develop'.
+Comienze una nueva característica usando
++ git flow feature start MYFEATURE ++
Esta acción crea una nueva rama derivada de 'develop' y luego cambia el código a esta rama.
+ + +Terminar una característica
+ ++ Termina de trabajar una característica. + Esta acción realiza lo siguiente: +
+-
+
- Concilia MYFEATURE en 'develop' +
- Borra la rama MYFEATURE +
- Establece como versión de trabajo la rama 'develop' +
+ git flow feature finish MYFEATURE ++
Publicar una característica
+ +
+ ¿Estás trabajando colaborativamente?
+ Publica una característica a un servidor remoto así puede ser vista por otros.
+
+ git flow feature publish MYFEATURE ++
Obteniendo características publicadas
+ ++ Descarga una característica publicada por otro y sigue sus cambios. +
+ ++ git flow feature pull MYFEATURE ++
Publica una versión
+ +-
+
- Prepara una versión para producción +
- Permite arreglos menores y la preparación de los meta-datos para la publicación +
★ ★ ★
+Comienza una publicación
+ +Para comenzar una publicación, usa el comando git flow release. Creará
+ una rama para una nueva versión derivada de 'develop'. + ++ git flow release start RELEASE [BASE] ++
Opcionalmente, usa [BASE]
indicando la código sha-1 el cambio desde la cual comenzar al versión. El cambio debe ser parte de la rama 'develop'.
★ ★ ★
+Es apropiado publicar la rama de la versión después de crearla para permitir que otros desarrolladores envíen cambios para esta versión. Hazlo de forma similar a publicar características:
++ git flow release publish RELEASE ++
(Puedes seguir versiones publicadas utilizando el comando git flow release track RELEASE
Da cierre una publicación
+ +Dar cierre a una publicación es un gran paso. Realiza varias acciones:
+-
+
- Concilia la rama de la versión con la rama 'master' +
- Etiqueta el cambio con su nombre +
- Re-concila la versión con la rama 'develop' +
- Borra la rama de la característica +
+ git flow release finish RELEASE ++
Revisiones
+ +-
+
- Las revisiones surgen de la necesidad de actuar inmediatamente cuando la versión ejecutándose en producción se encuentra en un estado que no deseamos + +
- Puede ramificarse desde la versión correspondiente etiquetada en la rama 'master' que corresponda a la versión en producción. +
★ ★ ★
+git flow hotfix start
+ +Como otros comandos de git flow, una revisión se abre con
++ git flow hotfix start VERSION [BASENAME] ++
El argumento de la versión determina el nombre de la revisión. Opcionalmente, puedes agregar un nombre para la base desde la cual comenzar.
+Cierra una revisión
+ +Al cerrar una revisión, esta se concilia en las ramas 'develop' y 'master'. Luego, el cambio en 'master' es etiquetado con el nombre de la revisión.
++ git flow hotfix finish VERSION ++
Comandos
+
Tareas pendientes
+★ ★ ★
+-
+
- Aquí no se han cubierto todos los comandos disponibles, sólo los más importantes +
- Aún puedes usar todos los comandos de git normales como los conoces, git-flow sólo es una herramienta más que puedes agregar a tu colección. + +
- La característica 'support' aún es beta, no se recomienda usarla +
- Si quieres proveer traducciones, serán bien recibidas. +
★ ★ ★
+