Git: Spremenite obstoječe sporočilo o objavi

Napake so pogoste, delamo jih vsi. Zato na svinčnike dajo radirke. In to ni nič drugače z orodji, kot je Git. Čeprav je nekatere spremembe težko razveljaviti, običajno obstaja pot.

Kaj torej, če želite spremeniti obstoječe sporočilo o objavi? Na srečo je to preprosto narediti v Gitu, vendar se lahko metoda nekoliko spremeni glede na nekatere dejavnike.

Popravi zadnjo objavo, ki še ni potisnjena na daljavo

To je najpreprostejši primer, saj ni treba spreminjati oddaljenega repozitorija, samo spremeniti morate svojega. V tem primeru lahko uporabite naslednji ukaz:

$ git commit --amend

Če zaženete ta ukaz, se odpre urejevalnik, kjer lahko spremenite zadnja potrdi sporočilo. Ko končate in shranite/zaprete urejevalnik, bo sporočilo o potrditvi spremenjeno.

Osebno raje počnem večino stvari v ukazni vrstici, kar lahko storite tako, da zgornjemu ukazu dodate argument in sporočilo:

$ git commit --amend -m "Added a new file"

Če to storite na ta način, ne boste odprli urejevalnika, temveč boste takoj spremenili sporočilo o objavi.

Popravi zadnjo objavo, potisnjeno na oddaljeno

To je še en pogost primer in ga je nekoliko težje popraviti, ne le zato, ker moramo spremeniti lastno skladišče, ampak moramo spremeniti tudi oddaljeno skladišče, ki je lahko dlje pred vašo lokalno podružnico.

Prvi korak je spreminjanje zadnje objave, tako kot smo storili v prejšnjem razdelku:

$ git commit --amend -m "Added a new file"

Nato morate te spremembe potisniti v oddaljeno skladišče. Vendar je to treba storiti z uporabo --force zastava.

$ git push <remote> <branch> --force

To moramo narediti na ta način, da prepišemo oddaljeni repozitorij z lastnim lokalnim stanjem.

Zavedajte se, da boste s siljenjem potiska tudi izgubiti vse potrditve v lokalni podružnici, ki jih še nimate v lokalni podružnici. Nadaljuj previdno!

Oglejte si naš praktični, praktični vodnik za učenje Gita z najboljšimi praksami, standardi, sprejetimi v panogi, in priloženo goljufijo. Nehajte Googlati ukaze Git in pravzaprav naučiti it!

Če lahko dovolj hitro odkrijete napako, sprememba ne bo težava. V nasprotnem primeru boste morda morali poiskati drugo rešitev, da se izognete izgubi morebitnih sprememb, narejenih po potrditvenem sporočilu, ki ga želite spremeniti.

Uporabite Interactive Rebase

Druga možnost, ki je bolj prilagodljiva kot prejšnje opisane rešitve, je uporaba interaktivne rebase. S tem lahko pregledate zadnjih N potrditev in jih spremenite, vključno z izbiranjem, stiskanjem itd.

Če želite zagnati ponovno bazo, lahko uporabite naslednji ukaz:

$ git rebase -i HEAD~n

Tu n je število objav, ki jih želite pregledati in urediti. Nato boste videli seznam potrditev, podoben temu:

$ $ git rebase -i HEAD~4
pick 788ebf0 Oops, I forgot to add a new file
pick ced1329 Fixed a super critical bug
pick 5e9cdc5 Added a new file



















Kot lahko vidite, je navedenih vseh zadnjih N potrditev in po potrebi lahko spremenite njihova sporočila.

Časovni žig:

Več od Stackabuse