So löschen Sie frühere Versionen in Git

WBOY
Freigeben: 2023-05-25 19:31:08
Original
1929 Leute haben es durchsucht

Git ist heute eines der beliebtesten Tools zur Versionskontrolle. Seine Leistungsfähigkeit und Flexibilität werden von Entwicklern und Teams bevorzugt, und Git kann alle Änderungen und den Verlauf eines Projekts verfolgen. Mit fortschreitender Entwicklung müssen jedoch möglicherweise einige ältere Versionen entfernt werden. In diesem Artikel erfahren Sie, wie Sie alte Versionen löschen und Ihren Git-Verlauf bereinigen.

  1. Git Reset

Sie können alte Versionen ganz einfach mit dem Git Reset-Befehl löschen, der den HEAD (aktuellen Zweig) auf die alte Version verweist, die Sie löschen möchten. Beachten Sie, dass Git Reset HEAD tatsächlich auf die alte Version verweist und alle nach dieser Version vorgenommenen Änderungen verloren gehen.

Der Befehl, HEAD auf die alte Version zu verweisen, lautet wie folgt:

git reset <commit>
Nach dem Login kopieren

wobei die alte Versionsnummer ist, die Sie löschen möchten. Wenn Sie beispielsweise die beiden letzten Commits löschen möchten, lautet der Befehl:

git reset HEAD~2
Nach dem Login kopieren

Dadurch wird HEAD auf den drittletzten Commit verwiesen.

Einfacher Befehl setzt HEAD zurück, löscht jedoch keine Commits. Wenn Sie das Commit wirklich löschen möchten, müssen Sie die Option „--hard“ verwenden:

git reset --hard <commit>
Nach dem Login kopieren

Denken Sie daran, dass dies ein Vorgang ohne Rückgabe ist. Wenn Sie zu diesem Commit gewechselt sind und eine Wiederherstellung durchführen müssen, erstellen Sie bitte ein Backup.

  1. Git Revert

Mit Git Revert wird ein neues Commit erstellt, das die von der alten Version vorgenommenen Änderungen rückgängig macht. Dies ist ein sichererer Ansatz, da der Commit nicht gelöscht wird, sondern ein neuer Commit erstellt wird, um die Änderungen in der alten Version rückgängig zu machen.

Der Befehl zum Rückgängigmachen eines Commits lautet wie folgt:

git revert <commit>
Nach dem Login kopieren

wobei die alte Versionsnummer ist, die Sie rückgängig machen möchten. Um beispielsweise die beiden letzten Commits rückgängig zu machen, geben Sie Folgendes ein:

git revert HEAD~2..HEAD
Nach dem Login kopieren

Dadurch wird ein neuer Commit erstellt, der alle Änderungen vom drittletzten Commit bis zum neuesten Commit rückgängig macht.

  1. Git Rebase

Die beiden oben genannten Methoden sind eine Möglichkeit, den Verlauf zu ändern. Wenn Sie Git Reset oder Git Revert in einem gemeinsam genutzten Zweig verwenden, kann es bei anderen zu Verlaufsfehlern kommen. Hier kommt Git Rebasing ins Spiel.

Git Rebase ist eine Methode zum Organisieren von Commits, um eine neue Geschichte zu bilden. Durch die Integration von Commits aus einem Zweig in Commits aus einem anderen Zweig bereinigen Sie Ihren Zweigverlauf und entfernen alte Versionen.

Der Befehl lautet wie folgt:

git rebase -i <commit>
Nach dem Login kopieren

wobei das Flag -i einen interaktiven Reflow aktiviert, bei dem Sie Commits zum Löschen auswählen können. Um beispielsweise die beiden letzten Commits zu löschen, geben Sie Folgendes ein:

git rebase -i HEAD~2
Nach dem Login kopieren

Ändern Sie dann die Liste der Commits im Editor wie folgt:

pick abcdefg commit message
d eeeeee commit message
d fffffff commit message
Nach dem Login kopieren

Setzen Sie die ersten beiden Elemente auf „Pick“ und die anderen beiden Elemente auf „d“ (Löschen). . Speichern und schließen Sie den Editor, und Git erstellt einen neuen Verlaufseintrag neu.

Zusammenfassung

Die oben genannten sind drei Methoden zum Löschen alter Versionen mit Git. Jede Methode eignet sich für unterschiedliche Szenarien und hat ihre eigenen Vor- und Nachteile. Bitte wählen Sie basierend auf Ihrer spezifischen Situation die Methode aus, die für Sie am besten geeignet ist. Unabhängig davon, für welche Methode Sie sich entscheiden, denken Sie immer daran, vor dem Löschen eines Commits ein Backup zu erstellen, damit Sie Ihren Code bei Bedarf wiederherstellen können.

Das obige ist der detaillierte Inhalt vonSo löschen Sie frühere Versionen in Git. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage