wake-up-neo.com

Alle Änderungen nach dem letzten Festschreiben in git zurücksetzen

Wie kann ich alle Änderungen rückgängig machen, die nach dem letzten Festschreiben an meinem Verzeichnis vorgenommen wurden, einschließlich des Löschens hinzugefügter Dateien, des Zurücksetzens geänderter Dateien und des Zurücksetzens gelöschter Dateien?

295
Dogbert

Setzen Sie zuerst die Änderungen zurück

git reset HEAD --hard

dann alles untracked rausputzen. Wenn Sie Dateien behalten möchten, die aufgrund von .gitignore Nicht nachverfolgt werden, müssen Sie mit diesem Befehl vorsichtig sein.

git clean -fd
513

Wie kann ich jede Änderung rückgängig machen, die nach dem letzten Festschreiben an meinem Verzeichnis vorgenommen wurde, einschließlich des Löschens hinzugefügter Dateien, des Zurücksetzens geänderter Dateien und des Zurücksetzens gelöschter Dateien?

  1. Sie können Änderungen an nachverfolgten Dateien rückgängig machen mit:

    git reset HEAD --hard
    
  2. Sie können nicht verfolgte Dateien entfernen mit:

    git clean -f
    
  3. Sie können nicht nachverfolgte Dateien und Verzeichnisse entfernen mit:

    git clean -fd
    

    aber Änderungen an nicht verfolgten Dateien können nicht rückgängig gemacht werden.

  4. Sie können ignorierte und nicht verfolgte Dateien und Verzeichnisse entfernen

    git clean -fdx
    

    aber Änderungen an ignorierten Dateien können nicht rückgängig gemacht werden.

Sie können auch clean.requireForce Auf false setzen:

git config --global --add clean.requireForce false

um die Verwendung von -f (--force) zu vermeiden, wenn Sie git clean verwenden.

60
Ortomala Lokni

Es gibt zwei Befehle, die in dieser Situation funktionieren,

root> git reset --hard HEAD ~ 1

root> git Push -f

Weitere Git-Befehle finden Sie unter Seite

0
RKS