Entfernen einer Datei aus dem letzten Commit

GitGitBeginner
Jetzt üben

This tutorial is from open-source community. Access the source code

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

Git ist ein leistungsstarkes Versionsverwaltungssystem, das es Entwicklern ermöglicht, Änderungen in ihrer Codebasis zu verfolgen. Eine der gängigen Aufgaben in Git besteht darin, eine Datei aus dem letzten Commit zu entfernen. Dies kann nützlich sein, wenn Sie versehentlich eine Datei zum letzten Commit hinzugefügt haben, die Sie nicht einschließen wollten.

Entfernen einer Datei aus dem letzten Commit

Sie haben einer Datei zum letzten Commit hinzugefügt, die Sie nicht einschließen wollten. Sie möchten die Datei aus dem letzten Commit entfernen, ohne die Commit-Nachricht zu ändern.

Für diese Übung verwenden wir das Repository von https://github.com/labex-labs/git-playground. Nehmen wir an, Sie haben ein Git-Repository namens git-playground mit einer Datei namens file2.txt, die Sie versehentlich zum letzten Commit hinzugefügt haben. Hier sind die Schritte, um die Datei aus dem letzten Commit zu entfernen:

  1. Klonen Sie das Repository, navigieren Sie zum Verzeichnis und konfigurieren Sie die Identität:
git clone https://github.com/labex-labs/git-playground
cd git-playground
git config --global user.name "your-username"
git config --global user.email "your-email"
  1. Verwenden Sie git rm --cached <file>, um die angegebene <file> aus dem Index zu entfernen:
git rm --cached file2.txt
  1. Verwenden Sie git commit --amend, um den Inhalt des letzten Commits zu aktualisieren, ohne die Commit-Nachricht zu ändern:
git commit --amend --allow-empty

Wenn der Commit nach dem Löschen der Datei ein leerer Commit ist, verwenden Sie --allow-empty, andernfalls können Sie es weglassen.

Nach Ausführung dieser Befehle wird die Datei file2.txt aus dem letzten Commit entfernt, ohne die Commit-Nachricht zu ändern.

Dies ist, was passiert, wenn Sie file2.txt aus der Git-Versionskontrolle entfernen:

On branch master

Changes to be committed:
(use "git restore --staged <file>..." to unstage)
deleted: file2.txt

Untracked files:
(use "git add <file>..." to include in what will be committed)
file2.txt

Zusammenfassung

Das Entfernen einer Datei aus dem letzten Commit kann eine nützliche Fähigkeit sein, wenn Sie mit Git arbeiten. Mit den Befehlen git rm --cached <file> und git commit --amend können Sie eine Datei leicht aus dem letzten Commit entfernen, ohne die Commit-Nachricht zu ändern.