Lorsque vous utilisez Mercurial, comment annulez-vous toutes les modifications dans le répertoire de travail depuis le dernier commit? Il semble que ce serait une chose simple, mais ça m'échappe.
Par exemple, disons que j'ai 4 commits. Ensuite, j'apporte quelques modifications à mon code. Ensuite, je décide que mes modifications sont mauvaises et je veux juste revenir à l'état du code lors de mon dernier commit. Donc, je pense que je devrais faire:
hg update 4
avec 4 étant le numéro de 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.
Il vous ramènera au dernier commit.
--all
annulera tous les fichiers.
Voir le lien pour la description de la page de manuel.
hg update
est généralement utilisé pour actualiser votre répertoire de travail après avoir extrait un autre référentiel ou échangé des branches. 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 certaines révisions à l'aide de cette seule commande.
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 votre ami:
hg revert --all
hg update
fusionne vos modifications de 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 changements que vous avez déjà, c'est-à-dire qu'elle ne fait rien :-)
Si vous voulez lire sur Mercurial, je recommanderais le tutoriel très génial Hg Init .
hg revert --all
et alors
hg pull -u
travaille pour moi