Cómo ramificar con TortoiseHg


He descargado TortoiseHg 1.0 para su evaluación. Por mi vida no sé cómo hacer una rama. Parece entender las ramas (por ejemplo, en su navegador de repositorios), pero parece que no puedo encontrar una manera de hacer una rama. Esto parece una capacidad fundamental, ya que de los beneficios a menudo promocionados de DVC es la ramificación ligera.

Busqué en Google y no pude encontrar mucha discusión sobre este tema (al menos para las versiones recientes), así que tengo que asumir que me estoy perdiendo algo, ¿verdad?

Actualización: Así que señalé la respuesta de Chad Birch a continuación para responder al problema de "nueva rama". Como él señala correctamente, usted hace un commit y luego hace clic en el botón de rama para abrir el diálogo de mantenimiento de rama que es donde se crean nuevas ramas. Me gustaría que nos hubieran dado una opción de menú contextual para esto. Una vez que hayas ramificado, la siguiente pregunta natural es cómo fusionar y esto tampoco es obvio. Resulta que esa opción está enterrada en el repositorio explorador. Es necesario seleccionar la cabeza de otra rama, haga clic derecho y luego seleccione "Combinar con...".

Author: Michael Tiller, 2010-04-01

4 answers

Como se muestra en docs , todo lo que debe hacer es hacer clic en el botón branch: default cerca de la parte superior del diálogo de confirmación, y cambiar a un nuevo nombre de rama.

 203
Author: Chad Birch,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-08-04 23:44:12

Para iniciar una nueva rama con TortoiseHg pulse Commit... luego, por encima del mensaje de confirmación presione Branch, luego "Abrir nueva rama con nombre:"

 24
Author: nme,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-01-27 10:47:45

Solo quería agregar que para enviar una nueva rama al repositorio remoto hay una casilla de verificación en la pestaña Sincronizar bajo Opciones de "Permitir enviar una nueva rama" - debe recordar desactivarla nuevamente justo después.

 9
Author: TamW,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-02-16 21:37:17

La mayor parte del tiempo en mercurial, usted clone el repositorio para hacer una rama.

Luego puede combinar los repositorios separados una vez que haya realizado sus ediciones y confirmaciones.

Esto puede sonar como que tomaría mucho espacio en disco, pero en la mayoría de los sistemas operativos, mercurial hará enlaces duros en lugar de copiar los archivos. De todos modos, el espacio en disco es normalmente barato, y porque es local es bastante rápido.

Si lo piensas, cada "checkout" (en terminología svn) o "clone" (en terminología mercurial) es realmente una rama que probablemente se fusionará de nuevo por lo que tiene mucho sentido que los clones son la forma común de hacer ramas.

 8
Author: blokeley,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-04-02 08:31:58