Ich verschiebe einen Erstellungsprozess, um mercurial zu verwenden, und möchte das Arbeitsverzeichnis wieder in den Zustand der Spitzenrevision versetzen. Frühere Läufe des Erstellungsprozesses haben einige Dateien geändert und einige Dateien hinzugefügt, die ich nicht festschreiben möchte, sodass ich lokale Änderungen und Dateien habe, die nicht zum Repository hinzugefügt wurden.
Was ist der einfachste Weg, um all das zu verwerfen und ein sauberes Arbeitsverzeichnis mit der neuesten Version zu erhalten?
Derzeit mache ich das:
hg revert --all
<build command here to delete the contents of the working directory, except the .hg folder.>
hg pull
hg update -r MY_BRANCH
aber es scheint, dass es einen einfacheren Weg geben sollte.
Ich möchte das Äquivalent zum Löschen des Repos, zum Erstellen eines neuen Klons und zum Aktualisieren tun. Aber das Repo ist zu groß, um schnell genug zu sein.
archive
Befehl in Zukunft hilfreich. Zum Beispiel könnten Sie hg archive ../newbuild
, und ein Schnappschuss Ihres Repositorys wird zuletzt hg update
dort platziert. Normalerweise mache ich das für nächtliche Builds, nur damit ich nicht riskiere, mein Repo zu überladen. Löschen Sie einfach das Build-Verzeichnis, wenn Sie es nicht mehr benötigen.
hg update 00
) und dann auf den Tipp zurück aktualisieren . Warum reicht es nichthg revert --all
aus, vor dem Abrufen und Aktualisieren wieder in einen konsistenten Arbeitsordnerstatus zurückzukehren?