1226 Stimmen

Wie kann ich nicht bestätigte Änderungen einschließlich Dateien und Ordner rückgängig machen?

Gibt es ein Git-Befehl, um alle nicht bestätigten Änderungen in einem Arbeitsverzeichnis und Index rückgängig zu machen und auch neu erstellte Dateien und Ordner zu entfernen?

2 Stimmen

2 Stimmen

Nun ja, ich habe alle unterschiedlichen und schwer zu merkenden Antworten unten gelesen, mit ihren Einschränkungen und Spezialfällen und "funktioniert nicht, wenn du xxx hast", und habe mich dafür entschieden, das gesamte Repository zu löschen, es zu klonen, um alle bearbeiteten und hinzugefügten Dateien zu entfernen. Es sind auch nur zwei Befehle. `rm -r projectdir; git clone xxx`. Für mich ist dies eine häufige Operation - ein Repository auschecken, damit herumspielen und dann wieder zu einem sauberen Checkout zurückkehren, um es bearbeiten zu können. Nicht ideal, aber funktioniert zu 100%. Hoffentlich wird es irgendwann einen einfachen Befehl dafür geben.

6voto

JDValle Punkte 83

Von Git-Hilfe:

 Änderungen, die vorgenommen werden sollen:
      (Verwenden Sie "git restore --staged ...", um die Staging rückgängig zu machen)

    Änderungen, die nicht für den Commit vorgemerkt sind:
      (Verwenden Sie "git add ...", um zu aktualisieren, was committet werden soll)
      (Verwenden Sie "git restore ...", um Änderungen im Arbeitsverzeichnis zu verwerfen)

-2voto

thinkhy Punkte 883

Normalerweise benutze ich diese Methode, die gut funktioniert:

mv fold/file /tmp
git checkout fold/file

1 Stimmen

Dies entspricht genau dem, was der Typ mit 357 "Likes" vorgeschlagen hat. Nur dass du sogar eine Sicherungskopie der neu überprüften Datei erstellst.

-3voto

Jason Lemay Punkte 51

Ein sicherer und langer Weg:

  1. git branch todelete
  2. git checkout todelete
  3. git add .
  4. git commit -m "Ich habe etwas Schlimmes getan, es tut mir leid"
  5. git checkout develop
  6. git branch -D todelete

-3voto

Aniket Punkte 175

Verwendung:

git reset HEAD Dateipfad

Zum Beispiel:

git reset HEAD om211/src/META-INF/persistence.xml

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