23 Stimmen

Wie man alle entfernten Dateien mit Mercurial vergisst

Ich bin neu in Mercurial und nach einer Bereinigung des Bildordners in meinem Projekt, habe ich eine Menge Dateien, die mit ! im 'hg status' angezeigt werden. Ich kann ein "hg forget" für jede Datei eingeben, aber es muss einen einfacheren Weg geben.

Wie kann ich also Mercurial anweisen, alle entfernten (Status = !) Dateien in einem Ordner zu vergessen?

27voto

Ry4an Brase Punkte 77642

Wenn Sie auch damit einverstanden sind, dass alle vorhandenen Dateien, die nicht ignoriert werden, hinzugefügt werden:

hg addremove

wäre ein beliebter Weg, dies zu tun.

10voto

peak Punkte 86238

Mit Fileset (Mercurial 1.9):

hg forget "set:deleted()"

Im Allgemeinen unter Linux oder Mac:

hg status -dn | while read file ; do hg forget "$file" ; done

Oder, wenn Ihre Shell es erlaubt, wenn es nicht zu viele Dateien gibt und wenn die Dateinamen keine Leerzeichen oder Sonderzeichen enthalten, dann:

hg forget $(hg st -dn)

I

3voto

VonC Punkte 1117238

Sie können es versuchen:

hg forget -I '*'

um alle Dateien in den Befehl forget einzuschließen.

1voto

eqzx Punkte 4805

Durch die Verwendung des -d Flagge für Status, die fehlende Dateien anzeigt:

for file in $(hg status -d | cut -d " " -f 2); do echo hg forget $file; done

Führen Sie dies in der Wurzel Ihres Repos aus, und wenn Sie mit den Ergebnissen zufrieden sind, entfernen Sie die echo

Dies hat den Vorteil gegenüber der akzeptierten Antwort von no zusätzliche Arbeit, z. B. das Hinzufügen einer Reihe von nicht verfolgten Dateien.

0voto

Serhii Kuzmychov Punkte 1116

Mehr kürzer statt

for file in $(hg status -d | cut -d " " -f 2); do echo hg forget $file; done

este

hg status -d | cut -d " " -f 2 | xargs echo hg forget # test case
hg status -d | cut -d " " -f 2 | xargs hg forget # real work

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X