2012-05-31 10 views
28

In Git GUI kann ich Teile eines Diff auswählen und nur diese Zeilen oder Chunks inszenieren. Wie würde ich das Gegenteil tun, wie beim Zurückrollen geänderte Zeilen in einer Datei. Normalerweise sind dies zufällige Leerraumänderungen, die ich einfach rückgängig machen möchte, aber immer noch andere Teile der gleichen Datei stage/commit.Git Diff - Wie mache ich ausgewählte Zeilen oder Chunks zurück

+0

git interaktiv hinzufügen Ich glaube oder http://stackoverflow.com/questions/1085162/how-can-i-commit-only-part-of-a-file-in-git –

+0

Das ist das Gegenteil. Es führt die Änderungen durch, aber dann müssen Sie die Datei wiederherstellen. – Kenoyer130

+0

http://stackoverflow.com/questions/1981830/undo-part-of-unstaged-changes-in-git –

Antwort

4

Für Git Gui: Klicken Sie zuerst auf Rescan, um nach der geänderten Datei zu suchen. Klicken Sie als Nächstes auf das Symbol links neben dem Dateinamen, um alle Änderungen für das Festschreiben zu übernehmen. Klicken Sie dann mit der rechten Maustaste auf die Debug-Zeile und wählen Sie Zeile von Commit unstagieren.

Die oben genannten Informationen von: http://nathanj.github.com/gitguide/tour.html

+1

Dadurch wird nichts in der Datei tatsächlich zurückgesetzt. –

45

Bühne die Teile, die Sie mit git add -p wollen, verwerfen dann (git checkout -- filename) die unstaged Änderungen.

+2

Ich weiß, die Frage ist über Git Gui, aber vielen Dank für die Bereitstellung einer Alternative für die Befehlszeile Benutzer. Einfach zu benutzen. –

7

In Git Gui,

  1. Stufe die gesamte Datei, die die unerwünschte Änderung (en)
  2. Unstage die Linien/hunks Sie rückgängig gemacht werden sollen
  3. Wählen Sie die Datei in der Unstaged Änderungen Bereich enthält und Engage-> Revert Changes rückgängig machen alle (unstaged) Änderungen an der Datei

Quelle: http://git.661346.n2.nabble.com/Revert-hunk-td4991128.html

+0

Requisiten für die Beantwortung der Frage im Titel und tun es mit 'git gui'. Sehr hilfreich. – mattgately

+0

Danke dafür ... es funktioniert. Doch git gui lässt mich in dieser Hinsicht nach git extensions verlangen. –