220 votes

Comment brancher avec TortoiseHG

J'ai téléchargé TortoiseHg 1.0 pour évaluation. Je n'arrive pas à comprendre comment faire une branche. Il semble comprendre les branches (par exemple dans son navigateur de référentiel) mais je n'arrive pas à trouver le moyen de faire une branche. Cela semble être une capacité fondamentale puisque l'un des avantages souvent vantés de DVC est la légèreté des branches.

J'ai cherché sur Google et je n'ai pas trouvé beaucoup de discussions sur ce sujet (au moins pour les versions récentes), je dois donc supposer que je manque quelque chose, n'est-ce pas ?

Mise à jour : J'ai donc signalé la réponse de Chad Birch ci-dessous pour répondre au problème de la "nouvelle branche". Comme il l'indique correctement, vous faites un commit et cliquez ensuite sur le bouton de la branche pour faire apparaître la boîte de dialogue de maintenance de la branche, qui est l'endroit où vous créez de nouvelles branches. J'aurais aimé qu'il y ait une option de menu contextuel pour cela. Une fois les branches créées, la question suivante est de savoir comment les fusionner, ce qui n'est pas évident non plus. Il s'avère que cette option est enfouie dans l'explorateur de référentiel. Vous devez sélectionner la tête d'une autre branche, faire un clic droit et sélectionner "Merge with...".

0 votes

Le branchement est sérieusement enterré dans un aspect complètement non intuitif du flux de travail. Le branchement et la livraison sont deux opérations très distinctes et il n'est pas logique d'enterrer le branchement profondément dans l'interface de livraison. Comme je réalise généralement des livraisons avant il ne m'est pas venu à l'esprit de regarder sous l'interface de validation. Le branchement est toujours sans papiers, même à la mi-2016 Chad Birch met en évidence ce qui passe pour être de la documentation dérivée ; c'est toujours horrible, mais comme il le fait remarquer, il n'est que le messager...

216voto

Chad Birch Points 39087

Comme indiqué dans la documentation il vous suffit de cliquer sur le bouton branch: default en haut de la boîte de dialogue de validation, et changer le nom de la branche.

31 votes

Ah, je vois où il est dit "appuyer sur ce bouton ouvre une boîte de dialogue de maintenance de branche". Cela ouvre effectivement une boîte de dialogue qui, comme il s'avère, permet de créer des branches, mais je ne suis pas d'accord avec l'affirmation "Comme indiqué dans la documentation" puisqu'il n'y a aucune mention explicite de la façon de créer une branche nulle part sur cette page que j'ai pu trouver. Je me demande ce que la création de branches a fait pour mériter un traitement de seconde classe dans TortoiseHg (par rapport aux autres outils Tortoise* où c'est une option de menu contextuel de première classe) :-)

32 votes

Oh, je n'essayais pas d'être insultant en disant "RTFM" ou quoi que ce soit de ce genre, j'avais juste besoin d'une phrase pour établir un lien avec la page concernée. Peut-être que "comme vaguement suggéré dans les documents" aurait été plus approprié dans cette situation.

1 votes

Pas de problème. Je n'essayais pas non plus d'être insultant. Je voulais juste faire comprendre à tous ceux qui sont venus consulter ce lien qu'il faut vraiment lire entre les lignes de la documentation pour obtenir la réponse, puisqu'elle n'est pas explicitement mentionnée.

26voto

nme Points 626

Pour démarrer une nouvelle branche avec TortoiseHg, appuyez sur Commit... puis, au-dessus du message Commit, appuyez sur Branch, puis sur "Open new named branch : "

9voto

TamW Points 211

Je voulais juste ajouter que pour pousser une nouvelle branche vers le dépôt distant, il y a une case à cocher dans l'onglet Synchroniser sous Options de "Autoriser la poussée d'une nouvelle branche" - vous devez vous rappeler de la désactiver juste après.

8voto

blokeley Points 1543

La plupart du temps, dans mercurial, vous clone le référentiel pour créer une branche.

Vous pouvez ensuite fusionner les différents dépôts une fois que vous avez effectué vos modifications et vos commits.

Cela peut sembler prendre beaucoup d'espace disque, mais sur la plupart des systèmes d'exploitation, mercurial crée des liens en dur au lieu de copier les fichiers. Quoi qu'il en soit, l'espace disque est normalement bon marché, et parce qu'il est local, il est plutôt rapide.

Si vous y réfléchissez, chaque "checkout" (dans la terminologie svn) ou "clone" (dans la terminologie mercuriale) est en fait une branche qui sera probablement fusionnée, il est donc tout à fait logique que les clones soient le moyen le plus courant de créer des branches.

11 votes

Ce n'est pas pratique pour les branches de fonctionnalités.

0 votes

Il s'agit d'un accord. Si vous avez des branches de longue durée (semi-permanentes), comme une branche version-1-stable et une branche version-2-stable, vous voudrez utiliser branches nommées . Voir aussi le documentation sur les branches mercuriales .

11 votes

-1. Il s'agit au mieux d'un piratage. Le clonage pour le branchement ne fonctionne pas du tout si vous suivez un dépôt distant, puisque vous ne pouvez pas pousser vos changements locaux. Cela signifie que vous ne pouvez pas partager votre branche avec d'autres développeurs avec lesquels vous travaillez. La bonne façon de créer une branche est de créer une branche nommée dans votre dépôt.

0voto

Felipe Dias Points 1

Avant de livrer, cliquez sur le bouton Branche (voir image), puis sélectionnez une branche ou créez-en une nouvelle (en tapant à l'endroit où vous sélectionnez les branches).

Voir l'image ici

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X