2010-04-18 16 views
33

Escribí hg add y soy nuevo en mercurial y el resultado de esto fue un montón de pdb de exe de dll, etc. Todos se agregaron No se ha confirmado nada y básicamente quiero deshacer el complemento. la documentación de Hg olvidar no es muy claro seguro si eso es quiero quiero ¿Cómo puedo deshacer el complemento antes de la próxima confirmación¿Cómo elimino un archivo aún no comprometido que he agregado?

tengo algunos archivos reales que necesitan la adición de lo que después me puedo deshacer el complemento I utilizará agregar con la bandera de exclusión
Gracias

+0

También puede utilizar un archivo '.hgignore' para evitar la adición accidental ciertos tipos de archivos en el futuro también. – Amber

Respuesta

43

Consulte this mercurial tip. Para citar el enlace, si accidentalmente ha agregado un archivo, la forma de deshacerlo (cambiando su estado de A a A, o desconocido) es hg revertir. Por ejemplo, si se acaba de ejecutar hg add y se dio cuenta de que no desea que los archivos foo o barra para ser rastreados por Mercurial:

hg revert foo bar 
+0

+1. Hubiera sido mejor si también proporcionó el comando en sí. –

+2

No me gusta repetir algo ya escrito (decease profesional, supongo que :-)) - el comando se agrega ahora. –

10

De cualquier revert o remove se puede utilizar para añadir un-material aún no comprometida. Sin embargo, ambos tienen otros usos también, así que para mayor claridad hg forget fue (re) agregado en 1.3, y a pesar de su nombre podría ser más fácil de recordar.

+8

"y, a pesar de su nombre, podría ser más fácil de recordar." ... !! – Matt

-1

Dos consejos para este tipo de situaciones:

  • Si nada se ha comprometido en absoluto, simplemente eliminar .hg y empezar de nuevo con init Hg.
  • Si hace algo terrible en su repositorio y parece que no puede resolver cómo deshacerlo (y hg update -C o revert all no lo arreglarán), considere clonar el repositorio en el último punto bueno.
1

Si está utilizando un sistema Unix Creo que la mejor opción es ejecutar

hg status -an0 | xargs -0 hg revert

Cuestiones relacionadas