androide

Come modificare un messaggio di commit git

Come usare Git - Parte 3

Come usare Git - Parte 3

Sommario:

Anonim

Quando si lavora con Git, è possibile che si verifichi una situazione in cui è necessario modificare un messaggio di commit. Esistono diversi motivi per cui si desidera apportare la modifica, ad esempio correggere un errore di battitura, rimuovere informazioni riservate o aggiungere ulteriori informazioni.

Questa guida spiega come modificare il messaggio degli commit Git più recenti o meno recenti.

Modifica del commit più recente

Il comando git commit --amend consente di modificare il messaggio di commit più recente.

Commesso non spinto

Per modificare il messaggio del commit più recente che non è stato --amend repository remoto, --amend nuovamente il --amend utilizzando il flag --amend .

  1. Passare alla directory del repository nel proprio terminale.

    Eseguire il comando seguente per modificare (cambiare) il messaggio dell'ultimo commit:

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

    Ciò che il comando fa è sovrascrivere il commit più recente con quello nuovo.

    L'opzione -m consente di scrivere il nuovo messaggio sulla riga di comando senza aprire una sessione dell'editor.

Prima di modificare il messaggio di commit puoi anche aggiungere altre modifiche che hai dimenticato in precedenza:

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

Commesso push

Il commit modificato (modificato) è una nuova entità con un diverso SHA-1. Il commit precedente non esisterà più nel ramo corrente.

In generale, è necessario evitare di modificare un commit già inviato in quanto potrebbe causare problemi alle persone che hanno basato il proprio lavoro su questo commit. È una buona idea consultare i tuoi colleghi sviluppatori prima di modificare un commit push.

  1. Passare al repository.

    Modifica il messaggio dell'ultimo commit push:

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

    Forza push per aggiornare la cronologia del repository remoto:

    git push --force branch-name

Modifica di un commit più vecchio o multiplo

Il comando rebase riscrive la cronologia dei commit ed è fortemente sconsigliato rebase i commit che sono già stati inviati al repository Git remoto.

  1. Passare al repository contenente il messaggio di commit che si desidera modificare.

    Digitare git rebase -i HEAD~N , dove N è il numero di commit su cui eseguire un rebase. Ad esempio, se si desidera modificare il 4 ° e il 5 ° ultimo commit, digitare:

    git rebase -i HEAD~5

    Il comando visualizzerà gli ultimi X commit nell'editor di testo predefinito:

    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)

    Passa alle righe del messaggio di commit che desideri modificare e sostituisci pick con 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)

    Salva le modifiche e chiudi l'editor.

    Per ogni commit scelto, si aprirà una nuova finestra dell'editor di testo. Modifica il messaggio di commit, salva il file e chiudi l'editor.

    fix: update dependency json5 to ^2.1.1

    Forza il push delle modifiche al repository remoto:

    git push --force branch-name

Conclusione

Per modificare il messaggio di commit più recente, utilizzare il comando git commit --amend e per modificare un messaggio di commit più vecchio o multiplo utilizzare git rebase -i HEAD~N

Non modificare gli commit sospesi in quanto potrebbe potenzialmente causare molti problemi ai tuoi colleghi.