wake-up-neo.com

Wie verwerfe ich nicht festgeschriebene Änderungen in SourceTree?

Ich bin neu in der Git-Umgebung und benutze BitBucket mit SourceTree auf dem Mac. Jetzt möchte ich nur noch die Änderungen seit dem letzten Commit verwerfen. Wie soll ich das machen? Ich habe so etwas wie "Änderungen verwerfen" nicht gefunden, und das direkte Abrufen des letzten Commits scheint nicht zu funktionieren. Lösungen, die entweder mit der GUI oder der Befehlszeile durchgeführt wurden, sind gut. Vielen Dank.

68
goldfrapp04

Ich benutze gerne

git stash

Dadurch werden alle nicht festgeschriebenen Änderungen im Stash gespeichert. Wenn Sie diese Änderungen später verwerfen möchten, klicken Sie einfach auf git stash drop (oder git stash pop, um sie wiederherzustellen).

Dies ist jedoch technisch nicht der "richtige" Weg, um Änderungen zu verwerfen (wie andere Antworten und Kommentare gezeigt haben).

50
Max

Klicken Sie in SourceTree für Mac mit der rechten Maustaste auf die Dateien, die Sie verwerfen möchten (in den Dateien im Arbeitsbaum Liste) und wählen Sie Zurücksetzen .

Klicken Sie in SourceTree für Windows mit der rechten Maustaste auf die Dateien, die Sie verwerfen möchten (in den Änderungen der Arbeitskopie auflisten) und wählen Sie Verwerfen .

Am git würden Sie einfach tun:

git reset --hard, um Änderungen an versionierten Dateien zu verwerfen;

git clean -xdf, um neue ( nicht verfolgte ) Dateien, einschließlich ignorierter, zu löschen (die Option x). d soll auch nicht verfolgte Verzeichnisse entfernen und f erzwingen.

130
Roberto

Klicken Sie in der nicht bereitgestellten Datei auf die drei Punkte auf der rechten Seite. Sobald Sie darauf klicken, erscheint ein Popover-Menü, in dem Sie Discard file.

7

Ok, ich habe gerade bemerkt, dass meine Frage bereits im Fragentitel beantwortet wurde.

Verwenden Sie zum Entpacken von Dateien

git reset HEAD /file/name

Und um die Änderungen an einer Datei rückgängig zu machen

git checkout -- /file/name

Wenn sich mehrere Dateien in einem Ordner befinden, 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 ein Dummy-Repo erstellt und alle 3 Möglichkeiten aufgelistet

# 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
3

Klicken Sie im Quellenbaum auf das Arbeitsverzeichnis, klicken Sie mit der rechten Maustaste auf die Datei (en), die Sie verwerfen möchten, und klicken Sie dann auf Verwerfen

3
giuse