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?

23
demandé sur Peter Mortensen 2013-03-28 00:13:36

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

  1. lisez à propos des jeux de fichiers dans Mercurial.
  2. utilisez fileset dans la commande hg forget, quelque chose comme hg forget "set:added()".
25
répondu Lazy Badger 2017-11-14 12:46:17

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.

22
répondu Martin Geisler 2013-03-28 08:39:44

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..)

-1
répondu Peter Bernier 2013-03-27 20:21:51