Mercurial: Comment défaises-tu les changements?

Lorsque vous utilisez Mercurial, comment pouvez-vous annuler toutes les modifications dans le répertoire de travail depuis la dernière validation? Il semble que ce serait une chose simple, mais cela m’échappe.

Par exemple, disons que j’ai 4 commits. Ensuite, je modifie mon code. Ensuite, je décide que mes modifications sont mauvaises et je veux juste revenir à l’état du code lors de ma dernière validation. Donc, je pense que je devrais faire:

hg update 4 

4 étant la révision # de mon dernier commit. Mais, Mercurial ne modifie aucun des fichiers de mon répertoire de travail. Pourquoi pas?

hg revert fera l’affaire.

Cela vous ramènera à la dernière validation.

--all va annuler tous les fichiers.

Voir le lien pour la description de la page de manuel de celui-ci.

hg update est généralement utilisée pour actualiser votre répertoire de travail après avoir tiré des twigs de repo ou de swap différentes. hg up myawesomebranch . Il peut également être utilisé pour revenir à une version spécifique. hg up -r 12 .

Une solution alternative à hg revert est hg update -C . Vous pouvez ignorer vos modifications locales et mettre à jour une révision à l’aide de cette commande unique.

Je préfère généralement taper hg up -C car il est plus court que hg revert --all --no-backup 🙂

hg revert est ton ami:

 hg revert --all 

hg update fusionne vos modifications avec votre copie de travail actuelle avec la révision cible. La fusion de la dernière révision avec vos fichiers modifiés (= copie de travail actuelle) entraîne les mêmes modifications que vous avez déjà, c.-à-d. Qu’il ne fait rien 🙂

Si vous voulez lire sur Mercurial, je vous recommande le très bon tutoriel Hg Init .

 hg revert --all 

et alors

 hg pull -u 

travaille pour moi