Bazaar, Mercurial u otro para el control de la versión de usuario único?

¿Qué sistema de control de versiones recomendarías para:

  • usuario unico
  • buscando simple, fácil de usar
  • generalmente pequeños proyectos simples
  • trabajando en windows
  • por lo general, la encoding de python
  • sin server

El uso sería más encontrar código antiguo que situaciones complicadas de ramificación.

De otras publicaciones similares, Bazaar y Mercurial parecen ser los mejores sistemas de control de versiones distribuidas para mis necesidades. Estoy algo inclinado hacia Bazar, ya que parece más simple.

La principal queja que leí sobre Baazar fue que era lenta, pero que la velocidad se mejoraría en la versión 2, que se lanzará este verano. La nueva versión aún no se ha lanzado, pero hay un 2.0.0rc2.

Me pregunto si algo ha cambiado recientemente o si alguien tiene sentimientos fuertes sobre el tema.

EDITAR: Después de leer las respuestas y explorar algunas alternativas, voy con Bazar, al less por el momento. Para mis necesidades, los productos mencionados parecían bastante similares. Bazaar tiene documentation específicamente dirigida a un desarrollador en solitario y parece bastante fácil de usar. Otros parecen más dirigidos a grupos o aquellos con serveres centrales. Otros sistemas pueden ser tan buenos, pero pensé que comenzar a usar algo era más importante que pasar el time tratando de encontrar el progtwig perfecto.

¡Gracias a todos!

(¿Debería haber escrito esto como una edición, una respuesta o un comentario?)

Bazar es muy bueno para sus necesidades, y dudo que haya encontrado problemas de velocidad con sus proyectos. Bazaar tiene una interfaz gráfica de usuario muy bonita llamada Bazaar Explorer que recomendaría sobre TortoiseBzr. (Bazaar Explorer incluido en el instalador estándar 2.0 ahora).

Por supuesto, si eliges Mercurial, no pierdes mucho.

Así que será mejor que pruebes uno y otro y hagas tu elección. Cada fanático te recomendará su favorito.

Si solo es un desarrollador individual que trabaja en proyectos pequeños, cualquier sistema de control de versiones debe ser lo suficientemente rápido.

Soy un desarrollador de Mercurial y, por supuesto, lo recomendaré 🙂 Me gusta cómo Mercurial tiene un concepto central: el gráfico de changeset. El gráfico reside dentro de un repository (un clon). Puede tener varias líneas de desarrollo en el mismo clon. Esto puede ser en forma de varias cabezas, tal vez marcadas con la extensión de marcadores o como twigs con nombre. También puede usar varios clones para mantener las cosas separadas, o puede ir y venir: es fácil separar un clon combinado (use hg clone -r REV para get parte del gráfico de revisión). Vea esta publicación en el blog para ver bonitas imágenes.

Para Windows (y otras plataforms también) tiene TortoiseHg , que le ofrece una interfaz gráfica muy agradable. TortoiseHg también se integra con muchos complementos excelentes para Mercurial, en particular la extensión de logging , que le permite elegir cambios individuales de un file cuando se compromete. Con eso, puede editar varios files y luego confirmar esos cambios como varios sets de cambios independientes.

Finalmente, también debe saber acerca de Mercurial: The Definitive Guide , el libro en línea gratuito sobre Mercurial.

Si usted es un usuario de Windows, nada de IMO puede vencer a TortoiseSVN en términos de usabilidad y facilidad de uso.

Definitivamente Subversion …

Es gratis, muy fácil de configurar y usar, no requiere un server porque puede acceder al sistema de files local, y puedes encontrar montones y montones de documentation y ayuda si te quedas atascado porque creo que hay mucha más gente que usan SVN que bazar o git, por ejemplo …

Simplemente puede download TortoiseSVN ( http://tortoisesvn.tigris.org/ ) y comenzar a usarlo … No se requiere nada más para comenzar porque tortoisesvn tiene subversión incorporada, creo …

He jugado un poco con todos ellos.

La key que me ha atraído a Bazar es su flexibilidad.

¿Desea operar en modo centralizado (ala SVN)? Usted puede hacer eso. ¿Desea operar en modo distribuido (ala Mercurial o git)? Usted puede hacer eso.

Y aquí es donde se pone mejor: puedes hacer ambas cosas. Digamos que estás trabajando con un tipo que vino de SVN y simplemente no le gusta el concepto distribuido un poquito. Multa. Permita que trabaje en modo centralizado mientras el rest del equipo trabaja en modo distribuido. Si está fuera del repository central, puede incluso llevar su pago fuera de línea y realizar compromisos fuera de línea mientras él no está. Entonces él puede comprometerlos a todos cuando regrese.

Mientras que algunos de los otros sistemas tienen forms de aproximarse a diferentes models, ninguno parece tan comprometido con la flexibilidad como bazar.

He usado SVN, Git y Bzr bastante extensamente en varios proyectos diferentes. Actualmente estoy usando Bzr en un único proyecto de usuario y es muy fácil de configurar y usar. No es necesario configurar un server y viene con TortoiseBzr que funciona bien, puede que no sea una característica completa como TortoiseSVN, pero para un proyecto de un solo hombre, debe tener todo lo que necesita. Faltan algunas cosas, como la capacidad de revisión de tags, en cuyo caso debe recurrir a la interfaz de command-line. Consideré a Mercurial hace aproximadamente un año, pero aún no lo he utilizado en una situación real, así que no podría comparar. Decidí no hacerlo porque TortoiseHG no parecía muy maduro en ese momento, espero que haya mejorado desde entonces.

Me gusta bastante darcs , usa algo llamado teoría de parches que, hasta donde sé, es único en el software de control de versiones.

He estado usando Bazar por un time y estaba muy contento con eso. Con todo el bombo sobre Git , lo intenté. Y a pesar de que tiene conceptos bastante complejos, solo puedo decir que valió la pena el cambio. Ahora lo uso para todos mis proyectos. No importa que tan pequeño. Y creo que TortoiseGit se ha vuelto lo suficientemente bueno para ser utilizable.

Puedo ver los siguientes buenos puntos al respecto:

  • Es rápido
  • La ramificación y la fusión es tan simple que incluso se podría decir que es divertido
  • Tiene commands funky que no he visto en ningún otro lado (f.ex .: stash y rebase)
  • Está publicitado. En consecuencia, la comunidad es bastante activa y puedes encontrar un montón de material sobre ella
  • Puede get una copy de Gitorious para administrar sus proyectos de forma privada

Algunas cosas que no me gustan tanto:

  • visualización de twig en gitk "me parece" extraño

Yo uso git y funciona muy bien para mí. Yo uso msysgit en Windows.

Recomendaré a Git siempre. Es rápido, no necesita server, la bifurcación y la fusión es excelente. Para Windows necesita get MsysGit .

Mercurial también es muy bueno con una interfaz un poco más fácil para el usuario.