Comment annuler tous les fichiers ajoutés dans Mercurial
Disons que je tape hg add
dans Mercurial, et il y a un tas de fichiers non suivis dans mon répertoire de travail qui ne sont pas ignorés. Quel est le moyen le plus simple de dés-ajouter tous ces fichiers sans taper explicitement le nom de chaque fichier?
Puis-je simplement les dés-ajouter avec une seule commande?
3 réponses
Préface
, Vous devez toujours poser des questions, qui contiennent autant d'informations que possible. Parce que maintenant votre question, selon certaines conditions, peut avoir des réponses totalement différentes.
Cas un-pas de modifications locales dans les fichiers déjà versionnés, seulement les fichiers ajoutés (et non validés)
hg revert
retournera votre répertoire de travail à l'état après la dernière validation, en annulant tous les changements.
Cas un-modifications locales, que vous souhaitez enregistrer et parfois ajouté des fichiers
- lisez à propos des jeux de fichiers dans Mercurial.
- utilisez fileset dans la commande
hg forget
, quelque chose commehg forget "set:added()"
.
Utilisez hg revert
ou hg forget
sur les fichiers (les deux font la même chose pour un fichier sur lequel vous avez exécuté hg add
). Pour éviter de taper les noms de fichiers, vous pouvez utiliser un fileset comme ceci:
$ hg revert "set:added()"
Cela rétablira le fichier à son apparence dans la révision parente de la copie de travail, c'est-à-dire qu'il redeviendra inconnu.
Vous pouvez toujours simplement re-cloner votre référentiel, puis remplacer (supprimer existant, puis copier nouveau) le .HG répertoire dans votre dossier de travail avec celui du clone frais... (en supposant que vous n'avez pas d'attente s'engage..)