2009-05-31 12 views
25

Me gustaría probar un sistema de control de revisión distribuido. Utilizo un par de PC con Windows, un par de PC con Linux y una Mac. En Windows, me gustaría usar Tortoise.TortoiseGit, TortoiseBzr, TortoiseHg. ¿Son lo suficientemente sólidos como para cambiar de TortoiseSVN?

¿Alguna de las Tortugas distintas de TortoiseSVN es buena? Hasta hace poco, el golpe en contra de ellos ha sido que son lentos y con errores, pero parece que hay un nuevo impulso para que sean sólidos.

Prefiero no tener que probar los tres. ¿Alguien ha hecho el cambio últimamente y tiene una buena experiencia?

+0

He usado tortuga HG durante al menos un par de años de trabajo de producción. Sin embargo, una vez que te sientas cómodo con la línea de comando, no la usarás más. No he usado el mío por al menos un año. –

+0

Creo que la industria ha elegido a Git como el próximo repositorio de código fuente de elección. –

Respuesta

7

He estado usando TortoiseGit por un tiempo. Si bien es cierto que el rendimiento de git sufre de Windows, va a ser perfectamente aceptable en la mayoría de las situaciones. De los tres que mencionaste, Git ciertamente tiene la "Tortuga" más pulida, en mi opinión. Y si está acostumbrado a usar TortoiseSVN, la transición a Git debería ser bastante sencilla, ya que TortoiseGit se basa en la base de código TortoiseSVN y reutiliza muchos de sus principios de diseño e interfaz de usuario.

+9

He encontrado que TortoiseGit es una experiencia bastante poco pulida y tiene problemas para trabajar con los comandos más básicos. –

+5

Tenga en cuenta que TortoiseGit conserva el modelo SVN, lo que significa que algunos conceptos de Git, más significativamente el área de ensayo, no son compatibles. Las personas que provienen de SVN pueden encontrar esto ventajoso, pero las personas familiarizadas con Git pueden estar desorientadas. – jdigital

+5

TortoiseSVN es, con mucho, la aplicación Tortoise más pulida, no hay nada de qué hablar. Espero que algún día TortoiseGit sea lo suficientemente pulido para TortoiseSVN y cuando digo "pulido" no quiero decir "copiado", porque la ideología de Git sufre de decisiones de diseño de SVN. –

0

¿Está considerando cambiar a otro VCS? Debido a que al cambiar a TortoiseGit/Bzr/Hg no podrá acceder a los repositorios SVN. Estoy trabajando con GIT a través de TortoiseGit, pero está construido sobre TortoiseSVN y tiene un rendimiento similar.

Si solo está buscando una alternativa para usar SVN, debería echar un vistazo a RapidSVN. Todavía es bueno y es mucho más rápido que Tortoise, también funciona en Mac y Linux.

Espero que esto ayude!

Enviar un comentario Editar

Debe tener en cuenta Git. Es un VCS moderno y distribuido, hecho para ser más rápido y flexible. Tiene una comunidad muy grande y sólida. Muchos proyectos grandes están utilizando Git como Linux (Kernel) y Ruby On Rails.

Más sobre Git: http://git-scm.com/, http://whygitisbetterthanx.com/

+0

Me gustaría probar uno de los sistemas de control de revisión distribuidos. – Nosredna

+0

@Eduardo Cobuci, ¿entonces le parece que TortoiseGit es tan robusto y eficiente como TortoiseSVN? – Nosredna

+0

lamentablemente no es así, pero lo encontré lo suficientemente bueno. El desarrollo es muy activo y creo que se convirtió en una opción muy razonable. –

2

Teniendo en cuenta su configuración, parece algo innecesario utilizar un control de versiones distribuido cuando sólo se está trabajando con un par de equipos locales. Esto es especialmente cierto si ya está ejecutando un servidor de función SVN. El control de versiones distribuidas tiende a ser mucho más útil en proyectos más grandes con muchas ramificaciones y fusiones, ya que los VCS distribuidos tienden a valorar la fusión de alta calidad sobre todo lo demás.

Dicho esto, Google ha optado por ir con Mercurial (Hg) como su control de versión distribuida en Google Code. La mayoría del razonamiento tenía que ver con la velocidad, la flexibilidad y la facilidad de uso. Ciertamente, el conjunto de comandos de Hg parece mucho más amigable que el conjunto de comandos de Git, en mi opinión, y tiende a funcionar bien con repositorios SVN antiguos.

+1

Me gustaría ponerme al día con uno de los nuevos sistemas distribuidos, así que estoy listo para saltar a uno si tengo que hacerlo por trabajo. Además, me gustaría deshacerme de la vieja basura que estoy usando para alojar mi servidor SVN. Creo que es la mitad de mi factura de electricidad. :-) Pero principalmente, solo curiosidad intelectual. – Nosredna

+1

Distribuido VCSs rock, porque trabajan con código en términos de * conjuntos de cambios * en lugar de * revisiones *. –

+2

Me he movido completamente de SVN a HG recientemente debido a la clonación barata a la que me he acostumbrado. Recomiendo leer www.hginit.com por Joel Spolsky para personas que piensen '¿Por qué debería considerar distribuir VCS?' –

55

Personalmente he tenido buenas experiencias con TortoiseHg. También instala el sistema de línea de comandos hg, por lo que puede desplegarlo si lo necesita (o si prefiere hacer el control de la versión en la línea de comandos). Hay algunas peculiaridades en la interfaz, pero en general es muy sólida (y si utiliza la vista gráfica de revisión se ve muy bien). La importación de Subversion de Mercurial también es fantástica.

Incluso puede trabajar con repositorios Git usando la extensión hg-git para Mercurial, como menciona el bloc de CAD.

+3

¿Tiene soporte para algún tipo de puente hg-svn, si el resto de mi equipo aún no está listo para cambiar de svn? – Avi

+2

Solo he usado la herramienta de importación personalmente, pero hay muchas opciones disponibles. hgsubversion parece ser la más completa. http://mercurial.selenic.com/wiki/WorkingWithSubversion –

+2

También puede hacer push/pull desde repositorios Git. Ver http://jamesmckay.net/tag/hg-git/ –

20

Sugeriría TortoiseHg. Si está familiarizado con TortoiseSVN, puede usarlo de inmediato.

¿Desea usarlo en Windows?

A partir de hoy, TortoiseHg es mejor que TortoiseSVN en mi opinión. Y aún mejora muy rápido (lo usé desde la versión 0.4, la corriente es 0.9.2 con Mercurial 1.4.2). Una buena característica, por ejemplo: simplemente haga un montón de refactorización en su IDE y no le importa cambiarle el nombre. Después elige la función "Adivina el cambio de nombre" en el menú contextual y diviértete. No más historias rotas, porque has usado tu herramienta de cambio de nombre favorita en lugar de 'svn move'.

La instalación es realmente fácil: Descargue e instale TortoiseHg y solo un reinicio. Ahora también tiene la versión actual de la línea de comando Mercurial y la herramienta de conversión SVN. No es más que este paquete único.

¿Desea usarlo en Linux?

"sudo apt-get install mercurial" es todo lo que necesita (en un sistema basado en Debian) para usar la línea de comandos Mercurial, pero esta versión podría no ser la más reciente. Lo sé, hay repositorios PPA para Ubuntu y tal vez para Debian, también. Así que actualice su lista de fuentes de APT, importe las claves y puede instalar TortoiseHg con una integración muy agradable con Gnome.

Lo siento, pero no sé sobre la instalación en Mac.

DVCS tiende a ser útil de todos modos. Tiende a ser más divertido, sin importar si haces el escenario de hacker solitario o trabajas en un gran equipo. Además: con clone + push + pull también tiene una copia de seguridad integrada, rápida e inteligente.

embargo, también hay algunas desventajas a considerar:

1) Si comparte su trabajo entre Windows y cualquier sistema * nix, usted debe utilizar solamente caracteres ASCII para nombres de archivo. Ni Mercurial, ni Bazaar ni Git codifican la conversión como Subversion (ver CharacterEncodingOnWindows). Cualquier acento francés o diéresis alemán estropeará su trabajo al cambiar entre cualquier sistema operativo que utilice UTF-8 y el otro.

2) No debe usar muchos archivos binarios grandes. Mercurial no está diseñado para este propósito y no creo que Bazaar o Git sean más divertidos en esto.

+5

www.hginit.com será útil –

+1

A partir de Mercurial 2.0, se incluye la extensión largefiles, que permite un tratamiento eficiente de archivos binarios grandes, incluida la opción de descargar solo aquellos que necesita. –

1

Realmente sólo quería añadir un comentario a las sugerencias sobre TortoiseHG, pero los comentarios están cerrados,

Cómo agregar el repositorio PPA en Linux (sustituir onírico con su versión):

  1. Añadir las siguientes entradas al administrador de paquetes:

    deb http://ppa.launchpad.net/tortoisehg-ppa/releases/ubuntu oneiric main 
    deb-src http://ppa.launchpad.net/tortoisehg-ppa/releases/ubuntu oneiric main 
    
  2. añada las siguientes entradas al administrador de paquetes:

    deb http://ppa.launchpad.net/mercurial-ppa/releases/ubuntu oneiric main 
    deb-src http://ppa.launchpad.net/mercurial-ppa/releases/ubuntu oneiric main 
    

    IMPORTANTE: Como las versiones actuales de TortoiseHg a menudo requieren una versión más nueva de Mercurial que la que proporciona Ubuntu, también deberá agregar este PPA.

  3. Para configurar APT para confiar en la clave de firma de este repositorio, ejecute:

    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key 323293EE 
    
  4. Si había intalled versiones anteriores, que desea eliminar en primer lugar.

    sudo apt-get --purge remove mercurial 
    sudo apt-get --purge remove tortoisehg 
    
  5. Paso

    sudo apt-get install mercurial 
    sudo apt-get install tortoisehg 
    
+0

Se supone que la numeración de arriba es 1,2,3,4,5. Y se supone que los comandos están en gris (¿no es eso lo que se supone que deben hacer los 4 espacios vacíos?) ... – PatrickT

+0

He editado el formateo, simplemente quitando los 4 espacios y poniendo la palabra Paso delante de los números , para recuperar la secuencia 1,2,3,4,5. – PatrickT

+0

Una razón para publicar esta información aquí es que launchpad.net tiene lo siguiente, que no funcionó para mí (error 404) deb https://launchpad.net/~mercurial-ppa/+archive/releases principal onírico – PatrickT

Cuestiones relacionadas