Ich bin neu in der Git-Umgebung, und ich benutze BitBucket mit SourceTree auf dem Mac. Ich möchte jetzt nur die Änderungen seit dem letzten Commit verwerfen. Wie soll ich das machen? Ich habe nichts gefunden wie "Änderungen verwerfen", und es scheint nicht zu funktionieren, direkt vom letzten Commit zu ziehen. Lösungen, die entweder mit der GUI oder der Befehlszeile ausgeführt werden, sind gut. Vielen Dank.Wie verwerfen Sie nicht festgeschriebene Änderungen in SourceTree?
Antwort
Ich mag
git stash
Diese speichert alle unbestätigten Änderungen in der stash verwenden. Wenn Sie diese Änderungen später nur git stash drop
(oder git stash pop
, um sie wiederherzustellen) verwerfen möchten.
Obwohl dies technisch nicht die "richtige" Möglichkeit ist, Änderungen zu verwerfen (wie andere Antworten und Kommentare darauf hingewiesen haben).
gut, wenn Sie nur alle Dinge verwerfen möchten, ist es noch einfacher zu tun 'git reset --hard HEAD' –
@Roberto Welche Antwort ist falsch und warum? – smileBot
@cocoanut Ich denke, meine Antwort "falsch", weil dies ein Missbrauch der "Stash" -Funktion ist. Mohammads Antwort ist der richtige Weg, alle Veränderungen zu verwerfen. – Max
Ok ich habe gerade festgestellt, dass meine Frage bereits im Fragetitel beantwortet wurde.
Um unstage Dateien verwenden
git reset HEAD /file/name
und die Änderungen an einer Datei
git checkout -- /file/name
rückgängig zu machen Wenn Sie eine Batch-Dateien in einem Ordner haben, können Sie den gesamten Ordner rückgängig machen
git checkout -- /folder/name
Beachten Sie, dass alle diese Befehle bereits angezeigt werden, wenn Sie git status
Hier habe ich eine Dummy-Repo- und aufgeführt, die alle drei Möglichkeiten
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# modified: test
#
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified: test2
#
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
#
# test3
Von sourcetree gui Klick auf Arbeits Directoy rechten Maustaste auf die Datei (en), die Sie auf Verwerfen klicken, dann verwerfen wollen
Auf SourceTree für Mac, klicken Sie rechts die Dateien, die Sie (in der Dateien im Arbeits Baum Liste) verwerfen möchten, und wählen zurücksetzen.
Auf SourceTree für Windows-, klicken Sie rechts die Dateien, die Sie (in der Arbeitskopie Änderungen Liste) und wählen Verwerfen verwerfen wollen.
Auf git, würden Sie einfach tun:
git reset --hard
Änderungen versioniert Dateien zu verwerfen;
git clean -xdf
neue (untracked) Dateien zu löschen, ignoriert diejenigen, einschließlich (die x
Option). d
ist auch zu entfernen nicht verfolgte Verzeichnisse und f
zu erzwingen.
Sie können auch mit der rechten Maustaste auf die gesamte "Arbeitskopie" im linken Bereich klicken (oder drücken Sie Cmd + Shift + R) ;-) – Geo
Erstaunlich, dass derselbe Befehl einen anderen Namen für Mac und Windows hat. Als ob Git GUI (im Vergleich zur Kommandozeile) nicht schon genug verwirrend wäre. – NSTJ
Danke! Ich denke, dies sollte als die richtige Antwort gewählt werden ;-) –
Klicken Sie in der nicht gesicherten Datei auf die drei Punkte auf der rechten Seite. Sobald Sie darauf klicken, erscheint ein Popover-Menü, wo Sie dann Discard file
.
Das ist in Ordnung, wenn es nur ein paar Dateien sind, aber was passiert, wenn es viele Dateien gibt? –
- 1. Zurückgeworfene nicht festgeschriebene Änderungen rückgängig machen
- 2. Git erholen nicht festgeschriebene Änderungen
- 3. Testen auf nicht festgeschriebene Änderungen in mercurial
- 4. Git Pull gelöscht nicht festgeschriebene Änderungen
- 5. Funktion zurück Verwerfen Änderungen
- 6. Zip letzte festgeschriebene Änderungen nur
- 7. Richtiger Weg, um Änderungen in Git zu verwerfen
- 8. Entity Framework (3.5) - Änderungen verwerfen
- 9. Verwerfen Sie alle Änderungen in Github Desktop (Mac)
- 10. Verwerfen Sie alle Änderungen auf einmal mit GitHub Desktop
- 11. Checkout (Änderungen verwerfen) bei Dateien mit nur Leerzeichen-/Zeilenumbruch-Änderungen
- 12. Ignorieren Sie modifizierte (aber nicht festgeschriebene) Dateien in git?
- 13. Wie man mehrere Flecken unter Verwendung der hg Befehlszeile anwendet, wenn es bereits nicht festgeschriebene Änderungen gibt?
- 14. Git: Checken Sie einen Zweig aus, der nicht festgeschriebene Änderungen enthält
- 15. GWT Wie verwerfen sich Änderungen auf einem Editor
- 16. Was verwerfen alle Änderungen in Xcode Quellcodeverwaltung tatsächlich?
- 17. Xcode: "Die Arbeitskopie ____ hat nicht festgeschriebene Änderungen" vs. git status: "nichts zu committen, Arbeitsverzeichnis sauber"
- 18. Wie verwerfen Sie eine Funktion in PHP?
- 19. Wie Sie CoreData-Änderungen in einem Objekt verwerfen, wenn RKObjectManager das Objekt
- 20. Wie man git merge handle nicht festgeschriebene Änderungen an meinem Arbeitsbaum machen?
- 21. Wie verwerfen vorherige Versionen im Xcode-Projekt?
- 22. Xcode: Tastaturkürzel zum Auswählen von Änderungen zum Festschreiben oder Verwerfen?
- 23. Was ist der einfachste Weg in Git, um nicht festgeschriebene Änderungen an einer einzelnen Datei auszuwählen?
- 24. SVN: und Bash: Wie kann ich feststellen, ob es nicht festgeschriebene Änderungen gibt
- 25. Mercurial/hg - Abbruch: ausstehende nicht festgeschriebene Zusammenführungen
- 26. SourceTree zeigen Zweigliste nicht
- 27. Wie grep in Sourcetree git
- 28. Git SourceTree - Uncommitted Submodule
- 29. SourceTree Terminal funktioniert nicht richtig
- 30. So rückgängig machen "Verwerfen", wenn nicht festgeschrieben
Sie meinen, Sie möchten die letzte Festschreibung rückgängig machen? oder es verlassen und das vorherige Commit aus irgendwelchen Testgründen auschecken? –
@MohammadAbuShady Ich denke, die Antwort ist weder. Seit dem letzten Commit habe ich einige Änderungen vorgenommen, die ich verwerfen möchte. Ich möchte mein letztes Commit zurück haben. – goldfrapp04
Sie haben also Änderungen ohne Commit, die Sie zurücksetzen möchten? –