Android

Cum puteți schimba un mesaj de git-ului de angajare

Versioning avec github sur windows

Versioning avec github sur windows

Cuprins:

Anonim

Când lucrați cu Git, puteți întâlni o situație în care trebuie să editați un mesaj de angajare. Există mai multe motive pentru care ați dori să efectuați modificarea, cum ar fi remedierea unei date tipografice, eliminarea informațiilor sensibile sau adăugarea de informații suplimentare.

Acest ghid explică modul de modificare a mesajului celor mai recente sau mai vechi angajamente Git.

Modificarea celui mai recent angajament

Comanda git commit --amend vă permite să modificați cel mai recent mesaj de angajare.

Nu a fost împins să se angajeze

Pentru a schimba mesajul celui mai recent angajament care nu a fost împins în depozitul la distanță, comite-l din nou folosind --amend .

  1. Navigați la directorul de depozitare din terminalul dvs.

    Rulați următoarea comandă pentru a modifica (modifica) mesajul ultimului angajament:

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

    Ceea ce face comanda este suprascrierea celui mai recent angajament cu noua.

    Opțiunea -m vă permite să scrieți noul mesaj pe linia de comandă fără a deschide o sesiune de editor.

Înainte de a schimba mesajul de angajare, puteți adăuga și alte modificări pe care le-ați uitat anterior:

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

Împins angajamentul

Angajamentul modificat (modificat) este o entitate nouă cu un SHA-1 diferit. Angajamentul anterior nu va mai exista în sucursala curentă.

În general, ar trebui să evitați modificarea unui angajament care este deja împins, deoarece poate cauza probleme persoanelor care și-au bazat activitatea pe acest angajament. Este o idee bună să vă consultați colegii dvs. de dezvoltatori înainte de a schimba un angajament împins.

  1. Navigați la depozit.

    Modificați mesajul ultimului angajament împins:

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

    Forțați apăsarea pentru a actualiza istoricul depozitului la distanță:

    git push --force branch-name

Modificarea unei comisii mai vechi sau mai multe

Comanda de rebase rescrie istoricul de comitere și este puternic descurajată să retrasezi angajamentele care sunt deja împinse în depozitul de la distanță Git.

  1. Navigați la depozitul care conține mesajul de angajare pe care doriți să îl modificați.

    Tastați git rebase -i HEAD~N , unde N este numărul de angajamente pentru a efectua o rambursare activată. De exemplu, dacă doriți să schimbați al patrulea și al cincilea angajament, ați introduce:

    git rebase -i HEAD~5

    Comanda va afișa cele mai recente comenzi X în editorul de text implicit:

    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)

    Accesați liniile mesajului de angajare pe care doriți să-l schimbați și înlocuiți pick cu 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ți modificările și închideți editorul.

    Pentru fiecare angajare aleasă, se va deschide o nouă fereastră de editor de text. Modificați mesajul de angajare, salvați fișierul și închideți editorul.

    fix: update dependency json5 to ^2.1.1

    Forțați să schimbați modificările către depozitul de la distanță:

    git push --force branch-name

Concluzie

Pentru a schimba cel mai recent mesaj de angajare, utilizați comanda git commit --amend și pentru a schimba mai multe sau mai multe mesaje de angajare, utilizați git rebase -i HEAD~N

Nu modificați angajamentele impuse, deoarece ar putea cauza o mulțime de probleme colegilor.