mercurial add undo

Cómo deshacer todos los archivos agregados en Mercurial



add undo (3)

Digamos que hg add en Mercurial, y hay un montón de archivos sin seguimiento en mi directorio de trabajo que no se ignoran. ¿Cuál es la forma más fácil de eliminar todos esos archivos sin escribir explícitamente el nombre de cada archivo?

¿Puedo simplemente anularlos todos con un solo comando?


Siempre puede simplemente volver a clonar su repositorio y luego reemplazar (eliminar existente y luego copiar nuevo) el directorio .hg en su carpeta de trabajo con el del clon nuevo ... (asumiendo que no tiene confirmaciones pendientes ...)


Use hg revert o hg forget en los archivos (ambos hacen lo mismo para un archivo que ejecutó hg add ). Para evitar escribir los nombres de archivo, puede usar un conjunto de fileset como este:

$ hg revert "set:added()"

Esto revertirá el archivo a su aspecto en la revisión principal de la copia de trabajo, es decir, volverá a ser desconocido


Prefacio

Siempre debes hacer preguntas, que contengan la mayor cantidad de información posible . Porque ahora tu pregunta, dependiendo de algunas condiciones, puede tener respuestas totalmente diferentes.

Caso uno: no hay modificaciones locales en archivos ya versionados, solo archivos agregados (y no confirmados)

hg revert devolverá su directorio de trabajo al estado después de la última confirmación, deshaciéndolo de todos los cambios.

Caso uno: ediciones locales, que desea guardar y archivos agregados ocasionalmente

  1. Lea acerca de los conjuntos de archivos en Mercurial.
  2. Use el conjunto de archivos en el comando hg forget , algo como hg forget "set:added()" .