Betrachten wir die Geschichte folgende begehen:vollständig entfernen eine frühere begehen
* 627f412 (HEAD -> master) final commit
* 1425cf8 added some file
* 2c8bb78 initial commit
Das Repository wird weder gedrückt nicht während dieser Commits gezogen.
Das zweite Commit 1425cf8 ist ein unnötiges Commit. Und ich möchte dieses Commit vollständig entfernen.
So wird das neue Protokoll wie folgt aussehen:
* 627f412 (HEAD -> master) final commit
* 2c8bb78 initial commit
Wie kann ich das erreichen?
Ist git reset --hard HEAD~1
das Richtige in dieser Situation?
VonC Hier ist was passiert, wenn ich 'Rebase -i 2c8bb78'. Ein Editorfenster wird geöffnet. mit folgenden: pick 1425cf8 einige Dateien hinzugefügt pick 627f412 final commit Ich löschte die erste Zeile. Gespeichert die Datei. Ergebnis: Fehler: konnte nicht angewendet werden 627f412 ... final commit Mache ich etwas falsch? Ich habe git Rebase --abort, um zum ursprünglichen Status zurückzukehren – deshmukh
Siehe https://git-scm.com/book/de/v2/Git-Tools-Rewriting-History: Möchten Sie 1425cf8 Änderungen oder löschen Squash sie mit 627f412? – VonC
VonC entweder. Es ist ein Commit, das nicht hätte sein sollen. Darüber hinaus ist das 627f412 Commit, was ich will und es enthält alles, was Teil von 1425cf8 war sowieso – deshmukh