Github ist eine Plattform zum Speichern und Verwalten von Codeversions, die von Entwicklern auf der ganzen Welt weit verbreitet ist. Es gibt jedoch manchmal Situationen, in denen ein bestimmtes Commit aus einem Repository entfernt werden muss. Vielleicht haben Sie unnötige oder falsche Dateien gesendet oder einen Fehler gefunden, den Sie beheben möchten. In solchen Fällen kann es nützlich sein, zu wissen, wie man Commits entfernt.
Das Entfernen eines Commits aus einem Repository auf Github kann eine gewisse Identifizierung und Manipulation des Commit-Verlaufs erfordern. In diesem Handbuch werden wir uns einige Möglichkeiten zum Entfernen von Commits ansehen und erklären, wann Sie jedes Commits verwenden müssen.
Das Entfernen eines Commits kann schwierig und potenziell gefährlich sein, daher wird empfohlen, dass Sie Ihr Repository sichern, bevor Sie mit der Bearbeitung des Commit-Verlaufs beginnen. Wenn etwas schief geht, können Sie das Repository immer aus einem Backup wiederherstellen und den Verlust wertvoller Daten vermeiden.
Entfernen eines bestimmten Commits auf Github: Schritt für Schritt Anleitung
Manchmal müssen Sie bei der Arbeit mit Github-Repositorys ein bestimmtes Commit löschen. Dies kann auf einen Fehler im Code, eine Nichteinhaltung der Projektanforderungen oder andere Ursachen zurückzuführen sein. In diesem Tutorial werden wir uns ansehen, wie man ein bestimmtes Commit auf Github entfernt.
- Der erste Schritt besteht darin, das Repository zu öffnen, in dem sich das Commit befindet, das Sie löschen möchten.
- Klicken Sie oben auf der Repository-Seite auf die Registerkarte "Commits".
- Auf der Commit-Seite sehen Sie eine Liste aller Commits im Repository. Kopieren Sie den SHA-Code des Commits, das Sie löschen möchten.
- Jetzt müssen Sie das Terminal öffnen und zum Projektordner auf Ihrem Computer navigieren.
- Geben Sie den folgenden Befehl ein und ersetzen Sie "[commit-SHA]" auf den kopierten Commit-Code:
git rebase -p --onto [commit-SHA]~1 [commit-SHA]
Mit diesem Befehl wird der Zweig zu einem Commit umgeleitet, das dem zu löschenden Commit vorangestellt ist. Dadurch wird das zu löschende Commit aus dem Repository-Verlauf ausgeschlossen.
- Nachdem Sie den Git-Befehl ausgeführt haben, wird ein Texteditor geöffnet (normalerweise Vim). Sie müssen die Taste "i" drücken, um den Bearbeitungsmodus zu aktivieren.
- Nehmen Sie die folgenden Änderungen an der geöffneten Datei vor:
Ersetzt "[commit-SHA]" auf den kopierten Commit-Code. Ein Beispiel:
- Speichern Sie die Änderungen, indem Sie die Esc-Taste drücken, dann den Befehl ":wq" eingeben und die Eingabetaste drücken.
- Das Commit wird nun aus dem Repository-Verlauf entfernt.
- Um ein Remote-Repository auf Github zu aktualisieren, geben Sie den folgenden Befehl ein:
git push origin [branch-name] --force
Ersetzt "[branch-name]" auf den Namen des Zweiges, in dem Sie das Commit gelöscht haben.
Jetzt haben Sie ein bestimmtes Commit auf Github erfolgreich gelöscht. Es ist wichtig zu beachten, dass das Entfernen eines Commits die Arbeit anderer Entwickler beeinträchtigen kann, da sich der Repository-Verlauf ändert. Stellen Sie daher sicher, dass Ihre Aktionen in Zukunft keine Probleme verursachen, bevor Sie das Commit löschen.
Öffnen Sie die Repository-Seite auf Github
Bevor Sie ein Commit löschen können, müssen Sie die Repository-Seite auf Github öffnen. Führen Sie dazu die folgenden Schritte aus:
- Öffnen Sie einen Webbrowser.
- Gehe zur Website github.com .
- Melden Sie sich bei Ihrem Konto an, indem Sie Ihren Benutzernamen und Ihr Passwort eingeben.
- Suchen Sie auf der Github-Hauptseite nach einer Liste Ihrer Repositorys und wählen Sie das gewünschte Repository aus, indem Sie auf den Namen des Repositorys klicken.
Nachdem Sie diese Schritte ausgeführt haben, sind Sie auf der Seite des ausgewählten Repositorys auf Github und bereit, das gewünschte Commit zu löschen.
Gehen Sie zu "Commits"
Um ein bestimmtes Commit auf Github zu löschen, müssen Sie zum entsprechenden Abschnitt "Commits" gehen.
1. Öffnen Sie Ihr Repository auf Github und gehen Sie zur Startseite.
2. Oben auf der Seite sehen Sie mehrere Registerkarten, darunter die Registerkarte "Commits". Klicken Sie darauf.
3. Im Abschnitt "Commits" sehen Sie eine Liste aller Commits, die in Ihrem Repository ausgeführt werden. Jedes Commit wird durch seinen eindeutigen Hash-Code und eine kurze Beschreibung der Änderungen dargestellt.
4. Suchen Sie das Commit, das Sie löschen möchten. Normalerweise können Sie die Commit-Suche verwenden, wenn Sie seine Nachricht oder seinen Hash-Code kennen.
Anmerkung: Seien Sie vorsichtig beim Löschen von Commits, da dies die Integrität des Repository-Verlaufs beeinträchtigen kann. Das Entfernen eines Commits kann sich auch auf die zugeordneten pull request's und Zweige auswirken.
Sobald Sie das gewünschte Commit gefunden haben, können Sie den Löschvorgang entsprechend der gewählten Methode starten. Das Entfernen eines Commits auf Github ist eine Aktion, die über die GUI auf der Github-Website oder über die Befehlszeile auf Ihrem lokalen Computer durchgeführt werden kann.
Wenn Sie ein Commit über die GUI auf der Github-Website löschen möchten, klicken Sie einfach auf die Schaltfläche "Löschen" neben dem ausgewählten Commit und bestätigen Sie Ihre Absicht.
Verwenden Sie diese Anleitung, um ein bestimmtes Commit auf Github zu löschen und den Verlauf Ihres Projekts zu verwalten.
Wählen Sie das gewünschte Commit aus und klicken Sie auf "Revert"
Nachdem Sie zum Repository auf GitHub gewechselt haben, suchen Sie das Commit, das Sie in der Commitliste löschen möchten, und wählen Sie es aus.
Klicken Sie auf ein Commit, um seine Details zu öffnen.
Dann sehen Sie in der oberen rechten Ecke eine Schaltfläche "Umkehren".
Klicken Sie auf diese Schaltfläche, um den Vorgang zum Abbrechen des ausgewählten Commits zu starten.
GitHub erstellt einen neuen Zweig, in dem das ausgewählte Commit abgebrochen wird, wobei der Änderungsverlauf beibehalten wird.
Sie können die Änderungen im erstellten Zweig anzeigen und sicherstellen, dass das gewünschte Commit erfolgreich abgebrochen wurde.
Wenn alle Änderungen am erstellten Zweig korrekt sind, können Sie eine Anforderung erstellen, diesen Zweig mit dem Haupt-Repository-Zweig zusammenzuführen und somit das unerwünschte Commit zu entfernen.