Obre el menú principal

Canvis

Formas de trabajo con Bazaar

50 bytes afegits, 08:41, 23 maig 2011
cap resum d'edició
== Modos de trabajo ==
* Este artículo es una traducción del original en [http://bazaar-vcs.org/Workflows Inglés]* [http://bazaar-vcs.org/zh/WorkFlows 中文版本]* [http://gigo-ice.org/scm/bazaar/wiki/workflows.ja.html (Japones)]
<br> Bazaar soporta distintas formas de trabajo, en vez de obligar a que te adaptes a una única posible. No hay "una única forma buena": La mejor forma de trabajo depende de numerosos factores, como el tamaño de tu equipo. Algunas de las formas de trabajo más usadas son las siguientes.
Bazaar soporta distintas formas de trabajo, en vez de obligar a que te adaptes a una única posible. No hay "una única forma buena": La mejor forma de trabajo depende de numerosos factores, como el tamaño de tu equipo. Algunas de las formas de trabajo más usadas son las siguientes.__TOC__
__TOC__<br>
=== Solo ===
=== Solo ===Cuando se desarrolla software, se editan documentos o se cambian ficheros de configuracion, puede ser útil tener una herramienta VCS (sistema de control de versiones) fácil de usar. Esta forma de trabajo se puede usar de forma efectiva en proyectos donde sólo trabaja una persona.
Cuando se desarrolla software, se editan documentos o se cambian ficheros de configuracion, puede ser útil tener una herramienta VCS (sistema de control de versiones) fácil de usar. Esta forma de trabajo se puede usar de forma efectiva en proyectos donde sólo trabaja una persona<br> [[Image:Workflows single.png]]
[[ImagenLas ventajas frente a no usar ningún tipo de control de versiones son:Workflows singletener una copia de seguridad de versiones antiguas, poder volver a ellas y tener la historia de cambios.png]]
Las ventajas frente a características de Bazaar apropiadas para esta forma de trabajo es que apenas necesita administración (no usar hay que levantar ningún tipo de control de versiones son: tener una copia de seguridad de versiones antiguas, poder volver a ellas servidor) y tener la historia es fácil de cambiosusar.
Las características de Bazaar apropiadas para esta forma de trabajo es que apenas necesita administración (no hay que levantar ningún servidor) y es fácil de usar.=== Pareja ===
=== Pareja ===A veces dos personas necesitan trabajar juntas y compartir los cambios que hacen. Normalmente esta situación comienza a partir de una forma de trabajo "solo" (ver punto anterior) o una forma de trabajo "orientada a un equipo" (ver más adelante). En algún momento, la segunda persona realiza una rama (copia incluida la historia) de lo que la primera persona tiene. Ambos pueden seguir trabajando en paralelo haciendo cambios y combinándolos cuando sea conveniente.
A veces dos personas necesitan trabajar juntas y compartir los cambios que hacen. Normalmente esta situación comienza a partir de una forma de trabajo "solo" (ver punto anterior) o una forma de trabajo "orientada a un equipo" (ver más adelante). En algún momento, la segunda persona realiza una rama (copia incluida la historia) de lo que la primera persona tiene. Ambos pueden seguir trabajando en paralelo haciendo cambios y combinándolos cuando sea conveniente[[Image:Workflows peer. png]]
[[ImagenLas ventajas sobre "Solo" son:Workflows peer.png]]
Las ventajas sobre "Solo" son:*Se comparten fácilmente los cambios. *Cada línea de texto en cada fichero se atribuye a un cambio concreto, incluyendo quién lo cambió, cuando y por qué.
* Se comparten fácilmente los cambios.* Cada línea Las ventajas de texto en cada fichero se atribuye a un cambio concreto, incluyendo quién lo cambió, cuando Bazaar sobre CVS y por qué.Subversion para esta forma de trabajo incluyen:
Las ventajas de Bazaar sobre CVS y Subversion para esta forma de trabajo incluyen:*No es necesario un servidor. *"combinación inteligente" (intelligent merging) quiere decir que combinar cambios muchas veces no es un tormento.
* No es necesario un servidor.* "combinación inteligente" (intelligent merging) quiere decir que combinar cambios muchas veces no es un tormento.=== Centralizado ===
=== Centralizado ===Conocido también como "bloqueo de paso". Este es básicamente la misma forma de trabajo aconsejada/obligada por CVS y Subversion. Todos los desarrolladores trabajan en la misma rama (o ramas). Ejecutan "bzr update" para tener su copia actualizada y ejecutan "bzr commit" para almacenar sus cambios.
Conocido también como "bloqueo de paso". Este es básicamente la misma forma de trabajo aconsejada/obligada por CVS y Subversion. Todos los desarrolladores trabajan en la misma rama (o ramas). Ejecutan "bzr update" para tener su copia actualizada y ejecutan "bzr commit" para almacenar sus cambios[[Image:Workflows centralized.png]]
[[ImagenSubversion y CVS son buenas elecciones para este modo de trabajo porque lo hacen fácil. A diferencia de la mayoría de las herramientas de control de versiones distribuidas, Bazaar también hace fácil esta forma de trabajo puesto que la contempla directamente. Además, Bazaar proporciona importantes ventajas frente a Subversion y CVS:Workflows centralized.png]]
Subversion *Creación de ramas y CVS son buenas elecciones para este modo combinación de trabajo porque lo hacen fácillas mismas mucho mejor. A diferencia de la mayoría de las herramientas de control de versiones distribuidas, Bazaar también hace fácil esta forma de trabajo puesto que la contempla directamente*Permite renombrar mejor. Además, Bazaar proporciona importantes ventajas frente a Subversion y CVS:
* Creación de ramas y combinación de las mismas mucho mejor.* Permite renombrar mejor.=== Centralizado con commits locales ===
=== Centralizado con commits locales ===Esta forma de trabajo es esencialmente igual que la "Centralizada", excepto que los desarrolladores van haciendo cambios y haciendo un "commit --local" o desligan su checkout, y solo hacen un commit de su trabajo en la línea principal compartida cuando han terminado totalmente.
Esta forma de trabajo es esencialmente igual que la "Centralizada", excepto que los desarrolladores van haciendo cambios y haciendo un "commit --local" o desligan su checkout, y solo hacen un commit de su trabajo en la línea principal compartida cuando han terminado totalmente[[Image:Workflows localcommit.png]]
[[ImagenVentajas sobre "Centralizado":Workflows localcommit.png]]
Ventajas sobre "Centralizado":*Pueden trabajar sin conexión a red o están de viaje. *Menos interferencia en el trabajo de los demás si hacen un commit con errores.
* Pueden trabajar sin conexión a red o están Suvbersion y CVS no soportan esta forma de viajetrabajo.* Menos interferencia en el trabajo Otros sistemas de control de versiones distribuidos sí lo soportan, pero no de los demás si hacen un commit con erroresuna forma tan directa como Bazaar.
Suvbersion y CVS no soportan esta forma de trabajo. Otros sistemas de control de versiones distribuidos sí lo soportan, pero no de === Descentralizado con una forma tan directa como Bazaar.línea principal compartida ===
=== Descentralizado En este modo de trabajo, cada desarrollador tienes su propia rama o ramas, más commit correctos a la rama principal. Hacen su trabajo en su rama personal y lo combinan con una línea la principal compartida ===sólo cuando está totalmente lista.
En este modo de trabajo, cada desarrollador tienes su propia rama o ramas, más commit correctos a la rama principal. Hacen su trabajo en su rama personal y lo combinan con la principal sólo cuando está totalmente lista[[Image:Workflows shared.png]]
[[ImagenVentajas sobre "Centralizado con commits locales":Workflows shared.png]]
Ventajas sobre "Centralizado con commits locales":*Organización del trabajo más fácil - se pueden desarrollar cambios separados en sus propias ramas. *Los desarrolladores pueden combinar entre sí sus cambios en sus ramas personales cuando están trabajando en algo común.
* Organización del Subversion y CVS no soportan esta forma de trabajo más . Otros sistemas de control de versiones distribuidos sí lo hacen. Cuando se selecciona una de estas herramientas para este modo de trabajo, es importante que sea fácil - se pueden desarrollar cambios separados en sus propias ramasde usar, tenga muy buena calidad a la hora de combinar, un buen soporte para el renombrado y un almacenamiento eficiente (es decir, repositorios compartidos).* Los desarrolladores pueden combinar entre sí sus cambios en sus ramas personales cuando están trabajando en algo comúnTodas estas cualidades las tiene Bazaar.
Subversion y CVS no soportan esta forma de trabajo. Otros sistemas de control de versiones distribuidos sí lo hacen. Cuando se selecciona una de estas herramientas para este modo de trabajo, es importante que sea fácil de usar, tenga muy buena calidad a la hora de combinar, === Descentralizado con un buen soporte para el renombrado y un almacenamiento eficiente (es decir, repositorios compartidos). Todas estas cualidades las tiene Bazaar.supervisor humano ===
=== Descentralizado con En este modo de trabajo, cada desarrollador tiene su propia rama o ramas, más un acceso de sólo lectura a la rama principal. Un desarrollador (el supervisor) tiene permiso de commit en la rama principal. Cuando un desarrollador quiere que se combien su trabajo, le pide al supervisor que lo haga. El supervisor humano ===revisa el código y lo combina con la rama principal si cumple con los estándares necesarios.
En este modo de trabajo, cada desarrollador tiene su propia rama o ramas, más un acceso de sólo lectura a la rama principal. Un desarrollador (el supervisor) tiene permiso de commit en la rama principal. Cuando un desarrollador quiere que se combien su trabajo, le pide al supervisor que lo haga. El supervisor revisa el código y lo combina con la rama principal si cumple con los estándares necesarios[[Image:Workflows gatekeeper.png]]
[[ImagenVentajas sobre "Descentralizado con una línea principal compartida":Workflows gatekeeper.png]]
Ventajas sobre "Descentralizado con una *El código siempre se revisa antes de entrar en la línea principal compartida":.
* El código siempre Una herramienta asociada con Bazaar llamada [http://bazaar-vcs.org/BundleBuggy Buggy] puede ser útil para ver cuando los cambios están preparados para revisión, su estado y los comentarios del supervisor. Subversion y CVS no soportan esta forma de trabajo. Otros sistemas de control de versiones distribuidos sí lo hacen. Cuando se revisa antes selecciona uno de entrar estos, nuevamente hay que fijarse en la línea principalfacilidad de uso, la calidad de su merging, buen soporte para renombrado y almacenamiento eficiente.
Una herramienta asociada === Descentralizado con Bazaar llamada [http://bazaar-vcs.org/BundleBuggy Buggy] puede ser útil para ver cuando los cambios están preparados para revisión, su estado y los comentarios del un supervisor. Subversion y CVS no soportan esta forma de trabajo. Otros sistemas de control de versiones distribuidos sí lo hacen. Cuando se selecciona uno de estos, nuevamente hay que fijarse en la facilidad de uso, la calidad de su merging, buen soporte para renombrado y almacenamiento eficiente.automático ===
=== Descentralizado con En este modo de trabajo, cada desarrollador tiene su propia rama o ramas, más acceso de sólo lectura a la rama principal. Un software supervisor (por ejemplo PQM) tiene permisos de escritura en la rama principal. Cuando un desarrollador quiere que su trabajo se combine en la rama principal, pide a otra persona que lo revise. Una vez que se ha revisado, o bien el autor o bien el revisor pide al supervisor automático ===que lo combine, según la política de trabajo del equipo. El supervisor hace un merge, compila y ejecuta los test. Si todo pasa, combina el código en la rama principal.
En este modo de trabajoNota: Como alternativa, cada desarrollador tiene su propia rama o ramas, más acceso de sólo lectura a la rama principal. Un software supervisor (por ejemplo PQM) tiene permisos el paso de escritura en la rama principal. Cuando un desarrollador quiere que su trabajo revisión se combine en la rama principal, pide a otra persona que lo revise. Una vez que se ha revisado, o bien puede omitir y el autor o bien puede enviar el revisor pide cambio al supervisor automático sin revisión. Esto es especialmente apropiado cuando se usan prácticas como la programación en parejas, que lo combine, efectuan revisión de código sobre la marcha según la política de trabajo del equipo. El supervisor se hace un merge, compila y ejecuta los test. Si todo pasa, combina el código en la rama principalvez de como un paso separado.
Nota[[Image: Como alternativa, el paso de revisión se puede omitir y el autor puede enviar el cambio al supervisor automático sin revisión. Esto es especialmente apropiado cuando se usan prácticas como la programación en parejas, que efectuan revisión de código sobre la marcha según se hace, en vez de como un paso separadoWorkflows pqm.png]]
[[ImagenVentajas sobre "Descentralizado con un supervisor humano":Workflows pqm.png]]
Ventajas sobre "Descentralizado con un supervisor humano":*El código siempre se prueba antes de que entre la rama principal. La integridad de la rama principal es, por tanto, alta. *Mejor escalado cuando el equipo crece.
* El código siempre se prueba antes Una herramienta asociada a Bazaar llamada [http://bazaar-vcs.org/PatchQueueManager Patch Queue Manager] (PQM) puede hacer de que entre la rama principalsupervisor automático. La integridad de la rama principal es, por tantoEn cualquier caso, alta.* Mejor escalado cuando el equipo crecelos comentarios para seleccionar una herramienta del punto anterior "Descentralizado con supervisor humano" son válidos aquí también.
Una herramienta asociada a Bazaar llamada [http://bazaar-vcs.org/PatchQueueManager Patch Queue Manager] (PQM) puede hacer de supervisor automático. En cualquier caso, los comentarios para seleccionar una herramienta del punto anterior "Descentralizado con supervisor humano" son válidos aquí también.== Notas ==
== Notas ==Una de las grandes cosas de Bazaar es su adaptabilidad para trabajar de distintas formas. Las formas se trabajo se pueden cambiar, mezclar o ajustar como se necesite. Por ejemplo, un equipo puede decidir usar una forma tradicional "centralizada", pero complementarla con el modo en "pareja", es decir, dos desarrolladores intercambian directamente sus cambios cuando trabajan juntos.
Una Las formas de las grandes cosas trabajo son muy independientes de Bazaar es su adaptabilidad para trabajar la forma de distintas formasalmacenamiento. Las Si quieres asegurarte que todas tus ramas se guardan en un repositorio central, hay formas se trabajo se pueden cambiarde hacerlo, mezclar o ajustar como se necesite. Por por ejemplo, llevando los cambios a un equipo puede decidir usar una forma tradicional "centralizada"servidor central del que se hacen backups. Muchos equipos que usan herramientas de control de versiones, pero complementarla con los desarrolladores suben el modo en "pareja"código al repositorio simplemente como backup o para etiquetarlo. Los sistemas de control de versiones distribuidos permiten hacer lo mismo, es decir, dos desarrolladores intercambian directamente sus pero sin subir los cambios cuando trabajan juntosa la rama principal antes de lo debido.
Las formas de trabajo son muy independientes Los desarrolladores de la forma de almacenamiento. Si quieres asegurarte que todas tus ramas se guardan en un repositorio central, hay formas de hacerlo, por ejemplo, llevando los cambios a un servidor central del que se hacen backups. Muchos equipos que Bazaar usan herramientas de control de versiones, los desarrolladores suben "Descentralizado con supervisor automático" para desarrollar el código al repositorio simplemente como backup o para etiquetarlo. Los sistemas de control de versiones distribuidos permiten hacer lo mismo, pero sin subir los cambios a la rama principal antes de lo debidoBazaar.
Los desarrolladores de Bazaar usan "Descentralizado con supervisor automático" para desarrollar el mismo Bazaar.<br>
== Enlaces externos ==
== Enlaces externos ==*[http://foro.chuidiang.com/control-de-versiones/ Foro de control de versiones]
* [fuente: http://forowww.chuidiang.com/control-de-versiones/ Foro de control de versiones]chuwiki
fuente: http://www.chuidiang.com/chuwiki[[Category:Bazaar]][[Category:Control de versionesControl_de_versiones]]
3.140
modificacions