Kako izbrisati objavo v Gitu

Brisanje objave v Gitu je nekaj, kar lahko storite pogosteje, kot bi pričakovali. Pri tako običajnem opravilu bi vam verjetno prišel prav hiter vodnik.

Kako izbrisati objavo v Gitu

Ta članek odgovarja, kako izbrisati potrditev Git in druge možne rešitve, ki jih lahko poskusite. Torej, če naredite napako pri zadnji objavi ali želite počistiti zgodovino svojega repoja, berite naprej, če želite izvedeti.

Brisanje objave v Gitu

Objavo v Gitu lahko izbrišete na več načinov. Če ne želite ali ne morete spremeniti sporočila o potrditvi Git , je najpogostejša rešitev uporaba ukazov »git reset« in »git revert«.

Če želite uporabiti »git reset«, naredite to:

  1. Z git log poiščite objavo, ki jo želite izbrisati .
    Kako izbrisati objavo v Gitu
  2. Uporabite git reset –soft [commit hash], da razveljavite ukaz za objavo, ne da bi karkoli »nukirali«.
    Kako izbrisati objavo v Gitu
  3. Ali pa uporabite git reset –hard [commit hash], da ponastavite na objavo pred tisto, ki jo želite izbrisati.
    Kako izbrisati objavo v Gitu
  4. Zamenjajte »[commit hash]« z zgoščeno vrednostjo objave, na katero ciljate.

Druga možnost je, da uporabite »git rebase -i HEAD~[Number]« za ponovno bazo zadnjega števila potrditev. Zamenjajte [število] s številom potrditev. Git vam bo pokazal datoteko, ki jo lahko uredite, in odstranite obvezo, ki jo želite odstraniti. To storite le, če še niste pritisnili na potrditev.

To je na videz preprosta metoda, vendar bodite previdni. Trajno odstrani vse spremembe v objavah po tisti, na katero ste jo ponastavili, zato se prepričajte, da je to točno tisto, kar želite.

Lahko pa uporabite »git revert« takole:

  1. Če želite obdržati spremembe v svojem delovnem imeniku, uporabite git revert [commit hash] . Ta ukaz ustvari novo objavo, ki razveljavi spremembe iz objave, ki jo podate.
    Kako izbrisati objavo v Gitu
  2. Po vrnitvi potisnite spremembe v oddaljeno skladišče z git push .
    Kako izbrisati objavo v Gitu

Tukaj je še ena alternativa, če želite izbrisati več določenih potrditev:

  1. Uporabite git checkout [razpršitev zadnje objave], da preverite zadnjo objavo, ki naj ostane.
    Kako izbrisati objavo v Gitu
  2. Ustvarite novo vejo z git checkout -b repair .
    Kako izbrisati objavo v Gitu
  3. Zaženite git cherry-pick [posebno zgoščeno vrednost objave] pri prvi objavi, ki jo želite ohraniti.
    Kako izbrisati objavo v Gitu
  4. Ponovite za druge objave, ki jih želite ohraniti.
  5. Zaženite git checkout master v checkout master.
    Kako izbrisati objavo v Gitu
  6. Ponastavi master na zadnjo uporabno objavo z git reset –hard [zgoščena vrednost zadnje objave] .
    Kako izbrisati objavo v Gitu
  7. Združite novo vejo za obvladovanje z git merge repair .
    Kako izbrisati objavo v Gitu
  8. Nato zaženite git push -f origin master, da potisnete na daljinski upravljalnik.
    Kako izbrisati objavo v Gitu

Kdaj morate izbrisati objave

Obstaja nekaj situacij, ko je odstranitev objave najboljša stvar. Tukaj je nekaj izmed njih.

Slaba koda

Eden najpogostejših razlogov, zakaj bi se želeli znebiti objave, je ta, da koda v njej preprosto ne reže. Morda ste naredili napako in želite začeti znova ali pa ste ugotovili, da se rezultat ne ujema s tem, kar želite doseči. Na primer, morda ste dodali funkcijo, ki je v nasprotju z drugim delom kode. Če izbrišete to objavo, se lahko vrnete nazaj, odpravite težavo in nato znova potrdite popravljeno različico.

Če ste pravkar dodali kos kode in nato opazili očitno napako, kot je hrošč ali del kode, ki ga ne bi smelo biti, vendar nimate časa, da bi to popravili – to je dober razlog da izbrišete obvezo. Namesto da dovolite, da ta nepotreben ali pomanjkljiv del kode ostane v zgodovini vašega projekta (in potencialno povzroči zmedo ali celo katastrofalne napake pri odpravljanju napak), lahko izbrišete to objavo. S tem bo vaš projekt čist.

Občutljivi podatki

Nenamerno posredovanje občutljivih podatkov se zgodi pogosteje, kot si morda mislite. Ni presenetljivo, da je to lahko veliko varnostno tveganje, tako osebno kot poslovno. Karkoli, od gesel in ključev API do osebnih podatkov, se lahko skrivaj znajde v vaši objavi. In ko je enkrat v projektnem prostoru, lahko kdorkoli dostopa do njega in potencialno krši vašo varnost ali varnost vaše ekipe.

Te nesreče so morda celo boljši razlogi za brisanje objave kot zgolj slaba koda. Napačno kodo lahko uredite in ne skrbite, da bo ostala v zgodovini projekta, vendar to ni tveganje, ki bi ga želeli sprejeti z občutljivimi podatki. Če na primer pomotoma objavite datoteko, ki vsebuje ključe API, odstranitev te objave prepreči, da bi ta ključ padel v napačne roke.

Ohranjanje zgodovine čiste

Še en dober razlog za brisanje Git commita je, da ohranite čisto in preprosto zgodovino projekta. Ko delate na projektu, postane vaša zgodovina odobritev vedno bolj natrpana z manjšimi posodobitvami, poskusi ali spremembami, ki niso več pomembne. Ko želite iz kakršnega koli razloga pregledati zgodovino, na primer da bi ugotovili, zakaj ste naredili določeno spremembo ali se po poskusu vrnili v stabilno stanje, lahko natrpana zgodovina postane težava.

Če izbrišete nepotrebne potrditve, ohranjate svojo zgodovino projekta urejeno in jo lahko preprosto spremljate vi in ​​drugi v vaši ekipi. To je še bolj uporabno pred združitvijo veje, tako da lahko vsakemu, ki pregleda vašo kodo, predstavite jasno, jedrnato in ustrezno zgodovino. Na primer, če imate več obvez, ki so le manjše prilagoditve funkcije, jih boste morda želeli strniti v eno samo obvezo, da bo vaša zgodovina čista.

Najboljše prakse in nasveti

Preden izbrišete potrditev, upoštevajte nekaj najboljših praks, da bo vaš projekt deloval in se izognili nenamernim posledicam.

Varnostno kopirajte svoje delo

Preden izbrišete katero koli objavo v Gitu, je dobro, da naredite varnostno kopijo svojega dela, tudi če mislite, da je morda brez vrednosti, da bi jo obdržali. Morda se zdi dodatno delo, vendar je varnostna kopija varnostna mreža, če stvari ne gredo po načrtih.

Varnostno kopijo lahko ustvarite tako, da naredite novo vejo, ki odraža trenutno stanje vašega skladišča. Na primer, preden izbrišete obvezo, ki je uvedla novo funkcijo, ustvarite rezervno vejo »feature-backup«. To vam bo dalo svobodo eksperimentiranja in brisanja zavez brez strahu pred izgubo pomembnega dela. Torej, če pozneje ugotovite, da potrebujete nekaj iz izbrisane objave, tega niste za vedno izgubili. Če se odločite, da te varnostne kopije ne potrebujete več, lahko izbrišete vejo Git .

Ne izbrišite javnih potrditev

Pri delu z javnimi repozitoriji, zlasti v odprtokodnih projektih ali skupinskih okoljih, morate biti še posebej previdni pri brisanju potrditev. Ko je objava potisnjena v javno skladišče in so jo drugi umaknili, lahko brisanje te objave zmede ali odvrne vse vpletene in moti delo. To je oblika vlečenja preproge izpod nekoga – ni prijetna izkušnja, ampak precej neobzirna. Če morate izbrisati obvezo, ki je že javna, o tem predhodno obvestite svojo ekipo ali sodelavce projekta, da bodo vedeli, kaj se dogaja. Tako so vsi ozaveščeni in lahko temu prilagodijo svoje delo.

Uporabite Povrnitev za javna skladišča

Če še vedno želite razveljaviti spremembe v javnem repozitoriju, lahko namesto trajnega brisanja objave razveljavite spajanje v Gitu . Za razliko od git reset, ki dejansko prepiše zgodovino, "git revert" ustvari novo potrditev, ki razveljavi spremembe, narejene v prejšnji objavi.

Zato je uporaba tega ukaza veliko varnejša in preglednejša, zlasti pri delu z drugimi. Članom svoje ekipe odkrito sporočate, da ste morda naredili napako, in vračate zavezo, ki jo popravlja. Če ste potisnili objavo s pomembno napako, vam »git revert« omogoča, da hitro izničite učinke te napake, hkrati pa ohranite nedotaknjeno zgodovino projekta. S tem ohranjamo celovitost zgodovine projekta in ohranjamo lokalno skladišče vseh skladno z oddaljenim.

Še enkrat preverite pred brisanjem

Eno največjih tveganj pri brisanju obvez v Gitu je izguba časa in truda, ki ste ga vložili v to obvezo. Če želite to preprečiti, preglejte vse spremembe v vsaki objavi, ki jo želite odstraniti. Uporabite »git log ali git show [commit hash]«, da pregledate objave. Če odstranjujete potrditev, ki je vaši kodi dodala več funkcij, se prepričajte, da vaš projekt ne potrebuje teh funkcij za delovanje ali da so podvojene drugje.

Zavzetost za to

Obstaja veliko razlogov za brisanje objave v Gitu, na primer vzdrževanje urejenosti vaše zgodovine, odpravljanje zmedenih napak ali varovanje vaših občutljivih podatkov pred radovednimi očmi. Ne glede na razlog, ne pozabite, da obstajata dva načina za to – »git reset« in »git revert«, pri čemer vsak služi svojemu namenu, zato izberite tistega, ki je pravi za vaš projekt. Za večjo jasnost lahko vejo Git tudi preimenujete .

Ste že kdaj morali izbrisati objavo v Gitu? Kakšne so bile vaše izkušnje in ali želite deliti kakšen nasvet? Spodaj pustite komentar in nadaljujte pogovor.


Leave a Comment

Kako omogočiti povezave z oddaljenim namizjem v računalnik z operacijskim sistemom Windows 10

Kako omogočiti povezave z oddaljenim namizjem v računalnik z operacijskim sistemom Windows 10

Ko delate stran od svoje mize, lahko dostopate do računalnika s povezavo Windows Remote Desktop Connection. Z dohodnimi povezavami z oddaljenim namizjem. Naša navodila vam pomagajo pri konfiguraciji in optimizaciji povezave.

Kako deaktivirati Facebook Messenger, ko je Facebook deaktiviran?

Kako deaktivirati Facebook Messenger, ko je Facebook deaktiviran?

Se sprašujete, zakaj prejemate sporočila v svojem Messengerju, tudi ko ste izklopili svoj Messenger? Preberite to, če želite izvedeti razlog.

Kako se povezati z brezžičnim zaslonom v sistemu Windows 10

Kako se povezati z brezžičnim zaslonom v sistemu Windows 10

Osnovni vodnik za povezovanje z brezžičnim zaslonom v operacijskem sistemu Windows 10. Enostavni koraki in rešitve za težave.

Kako nastaviti spremenljivko okolja v sistemu Windows 10

Kako nastaviti spremenljivko okolja v sistemu Windows 10

Spremenljivke okolja v Windows 10 so ključne za konfiguracijo aplikacij. Naučite se, kako jih učinkovito urediti in dodati.

Kaj je arhivirana pošta Gmail in kako jo obnoviti nazaj

Kaj je arhivirana pošta Gmail in kako jo obnoviti nazaj

Precej preprosto je pridobiti vašo e-pošto iz računa Gmail, ne glede na to, ali je bila shranjena za kasnejšo uporabo ali poslana pomotoma. Preberite članek, če želite izvedeti korake, ki prikazujejo obnovitev na namizju in v mobilni aplikaciji.

Kako zakleniti Facebook Messenger

Kako zakleniti Facebook Messenger

Ali menite, da vaše aplikacije v telefonu niso varne? Iščete način za zaklepanje Facebook Messengerja? Preberite članek, če želite izvedeti, kako vstavite geslo v Messenger.

Kako odblokirati nekoga na Facebooku

Kako odblokirati nekoga na Facebooku

Kako odblokirati nekoga na Facebooku in Facebook Messengerju. Prijavite se v svoj račun Facebook, na mobilnem ali namiznem računalniku, pojdite v Nastavitve> Blokiranje. Kliknite Odblokiraj.

Kako se povezati z Wi-Fi na televizorju Samsung

Kako se povezati z Wi-Fi na televizorju Samsung

Medtem ko bo televizor verjetno dobro deloval brez internetne povezave, če imate kabelsko naročnino, so ameriški uporabniki začeli preklopiti na spletno

Kako izklopiti staranje v Sims 4

Kako izklopiti staranje v Sims 4

Tako kot v resničnem svetu se bodo vaše stvaritve v igri Sims 4 sčasoma postarale in umrle. Simčki se naravno starajo skozi sedem življenjskih obdobij: dojenček, malček, otrok, najstnik,

Kako pomanjšati slike v Obsidianu

Kako pomanjšati slike v Obsidianu

Obsidian ima več vtičnikov, ki vam omogočajo oblikovanje zapiskov ter uporabo grafov in slik, da jih naredite bolj smiselne. Čeprav so možnosti oblikovanja omejene,