Android

So ändern Sie eine Git-Commit-Nachricht

Zero to Hero, Part 10: The ASK Command Line Interface (CLI)

Zero to Hero, Part 10: The ASK Command Line Interface (CLI)

Inhaltsverzeichnis:

Anonim

Bei der Arbeit mit Git kann es vorkommen, dass Sie eine Commit-Nachricht bearbeiten müssen. Es gibt eine Reihe von Gründen, warum Sie die Änderung vornehmen möchten, z. B. das Korrigieren eines Tippfehlers, das Entfernen vertraulicher Informationen oder das Hinzufügen zusätzlicher Informationen.

In diesem Handbuch wird erläutert, wie Sie die Meldung der neuesten oder älteren Git-Commits ändern.

Ändern des neuesten Commits

Mit dem Befehl git commit --amend können Sie die letzte Commit-Nachricht ändern.

Nicht gedrängtes Commit

--amend Sie die Nachricht des letzten Commits ändern --amend , das nicht in das Remote-Repository übertragen wurde, übergeben Sie sie erneut mit dem Flag --amend .

  1. Navigieren Sie zu dem Repository-Verzeichnis in Ihrem Terminal.

    Führen Sie den folgenden Befehl aus, um die Nachricht des letzten Commits zu ändern:

    git commit --amend -m "New commit message."

    Der Befehl überschreibt das letzte Commit mit dem neuen.

    Mit der Option -m können Sie die neue Nachricht in die Befehlszeile schreiben, ohne eine Editiersitzung zu öffnen.

Bevor Sie die Festschreibungsmeldung ändern, können Sie auch andere Änderungen hinzufügen, die Sie zuvor vergessen haben:

git add. git commit --amend -m "New commit message."

Festgeschriebenes Festschreiben

Das geänderte Commit ist eine neue Entität mit einem anderen SHA-1. Das vorherige Festschreiben ist im aktuellen Zweig nicht mehr vorhanden.

Im Allgemeinen sollten Sie es vermeiden, ein bereits übertragenes Commit zu ändern, da dies zu Problemen für Personen führen kann, die ihre Arbeit auf diesem Commit basieren. Es ist eine gute Idee, sich an Ihre Kollegen zu wenden, bevor Sie ein Push-Commit ändern.

  1. Navigieren Sie zum Repository.

    Ändern Sie die Nachricht des letzten Push-Commits:

    git commit --amend -m "New commit message."

    Push erzwingen, um den Verlauf des Remote-Repositorys zu aktualisieren:

    git push --force branch-name

Ändern eines älteren oder mehrerer Commits

Mit rebase Befehl rebase der rebase , und es wird dringend davon abgeraten, Festschreibungen, die bereits an das entfernte Git-Repository übertragen wurden, neu zu erstellen.

  1. Navigieren Sie zu dem Repository, das die Commit-Nachricht enthält, die Sie ändern möchten.

    git rebase -i HEAD~N , wobei N die Anzahl der Festschreibungen ist, für die eine Neufestsetzung durchgeführt werden soll. Wenn Sie beispielsweise den 4. und den 5. letzten Commit ändern möchten, geben Sie Folgendes ein:

    git rebase -i HEAD~5

    Der Befehl zeigt die neuesten X Commits in Ihrem Standardtexteditor an:

    pick 43f8707f9 fix: update dependency json5 to ^2.1.1 pick cea1fb88a fix: update dependency verdaccio to ^4.3.3 pick aa540c364 fix: update dependency webpack-dev-server to ^3.8.2 pick c5e078656 chore: update dependency flow-bin to ^0.109.0 pick 11ce0ab34 fix: Fix spelling. # Rebase 7e59e8ead..11ce0ab34 onto 7e59e8ead (5 commands)

    Gehen Sie zu den Zeilen der Commit-Nachricht, die Sie ändern möchten, und ersetzen Sie pick durch reword :

    reword 43f8707f9 fix: update dependency json5 to ^2.1.1 reword cea1fb88a fix: update dependency verdaccio to ^4.3.3 pick aa540c364 fix: update dependency webpack-dev-server to ^3.8.2 pick c5e078656 chore: update dependency flow-bin to ^0.109.0 pick 11ce0ab34 fix: Fix spelling. # Rebase 7e59e8ead..11ce0ab34 onto 7e59e8ead (5 commands)

    Speichern Sie die Änderungen und schließen Sie den Editor.

    Für jedes ausgewählte Commit wird ein neues Texteditorfenster geöffnet. Ändern Sie die Festschreibungsmeldung, speichern Sie die Datei und schließen Sie den Editor.

    fix: update dependency json5 to ^2.1.1

    Erzwinge das Verschieben der Änderungen in das Remote-Repository:

    git push --force branch-name

Fazit

Verwenden Sie den Befehl git commit --amend , um die git commit --amend zu ändern, und verwenden Sie git rebase -i HEAD~N , um eine ältere oder mehrere git commit --amend zu ändern.

Ändern Sie keine Push-Commits, da dies Ihren Kollegen möglicherweise viele Probleme bereiten kann.