Ako odstrániť záväzok v Git

Odstránenie odovzdania v Git je niečo, čo môžete robiť častejšie, než by ste očakávali. Pri takejto bežnej úlohe by sa vám pravdepodobne hodilo mať rýchleho sprievodcu.

Ako odstrániť záväzok v Git

Tento článok odpovedá na to, ako odstrániť potvrdenie Git, a na ďalšie možné riešenia, ktoré môžete vyskúšať. Ak sa teda vo svojom poslednom odovzdaní pomýlite alebo chcete vyčistiť históriu svojho úložiska, čítajte ďalej a dozviete sa to.

Odstránenie záväzku v Git

Potvrdenie v Git môžete odstrániť niekoľkými spôsobmi. Ak nechcete alebo nemôžete zmeniť správu odovzdania Git , najbežnejším riešením je použiť príkazy „git reset“ a „git revert“.

Ak chcete použiť „git reset“, postupujte takto:

  1. Nájdite odovzdanie, ktoré chcete odstrániť, pomocou git log .
    Ako odstrániť záväzok v Git
  2. Použite git reset –soft [commit hash] na zrušenie príkazu odovzdania bez toho, aby ste čokoľvek „nukli“.
    Ako odstrániť záväzok v Git
  3. Alebo použite git reset –hard [commit hash] na obnovenie odovzdania pred tým, ktorý chcete odstrániť.
    Ako odstrániť záväzok v Git
  4. Nahraďte „[commit hash]“ hashom odovzdania, na ktoré sa zameriavate.

Prípadne môžete použiť aj „git rebase -i HEAD~[Číslo]“ na zmenu základu posledného počtu odovzdaní. Nahraďte [číslo] počtom odovzdaní. Git vám ukáže súbor, ktorý môžete upraviť a odstrániť odovzdanie, ktoré chcete odstrániť. Urobte to iba vtedy, ak ste ešte neodovzdali odovzdanie.

Na povrchu je to jednoduchá metóda, ale buďte opatrní. Natrvalo odstráni všetky zmeny v odovzdaniach po tom, na ktorý ste ho resetovali, takže sa uistite, že je to presne to, čo chcete.

Prípadne môžete použiť „git revert“ takto:

  1. Ak chcete zachovať zmeny vo svojom pracovnom adresári, použite git revert [commit hash] . Tento príkaz vytvorí nové potvrdenie, ktoré zruší zmeny z vami zadaného odovzdania.
    Ako odstrániť záväzok v Git
  2. Po návrate presuňte zmeny do vzdialeného úložiska pomocou git push .
    Ako odstrániť záväzok v Git

Tu je ďalšia alternatíva v prípade, že chcete odstrániť viacero konkrétnych potvrdení:

  1. Na kontrolu posledného odovzdania, ktoré by malo zostať, použite príkaz git checkout [hash posledného odovzdania] .
    Ako odstrániť záväzok v Git
  2. Vytvorte novú vetvu pomocou git checkout -b repair .
    Ako odstrániť záväzok v Git
  3. Spustite git cherry-pick [špecifický hash odovzdania] pri prvom odovzdaní, ktoré chcete zachovať.
    Ako odstrániť záväzok v Git
  4. Opakujte pre ostatné odovzdania, ktoré chcete zachovať.
  5. Spustite git checkout master na checkout master.
    Ako odstrániť záväzok v Git
  6. Resetujte master na posledné použiteľné odovzdanie pomocou git reset –hard [posledný hash odovzdania] .
    Ako odstrániť záväzok v Git
  7. Zlúčte novú vetvu do hlavnej pomocou git merge repair .
    Ako odstrániť záväzok v Git
  8. Potom spustite git push -f origin master na zaslanie do diaľkového ovládača.
    Ako odstrániť záväzok v Git

Kedy by ste mali vymazať záväzky

Existuje niekoľko situácií, kedy je najlepšie vykonať odstránenie odovzdania. Tu sú niektoré z nich.

Zlý kód

Jedným z najbežnejších dôvodov, prečo by ste sa chceli zbaviť odovzdania, je to, že kód v ňom jednoducho nereže. Možno ste urobili chybu a chcete začať odznova, alebo ste si možno uvedomili, že výsledok nezodpovedá tomu, čo sa snažíte dosiahnuť. Napríklad ste mohli pridať funkciu, ktorá je v konflikte s inou časťou vášho kódu. Odstránenie tohto potvrdenia vám umožní vrátiť sa späť, opraviť problém a potom znova potvrdiť opravenú verziu.

Ak ste práve vykonali kus kódu a potom ste si všimli do očí bijúcu chybu, ako je chyba alebo časť kódu, ktorá tam nemala byť, no nemáte čas to opraviť – je to dobrý dôvod na odstránenie odovzdania. Namiesto toho, aby ste nechali tento nepotrebný alebo chybný kus kódu sedieť v histórii vášho projektu (a potenciálne by spôsobil zmätok alebo dokonca katastrofické chyby pri oprave chýb), môžete dané odovzdanie odstrániť. Ak tak urobíte, váš projekt bude čistý.

Citlivé údaje

K náhodnému sprístupneniu citlivých údajov dochádza častejšie, než by ste si mysleli. Nie je prekvapením, že to môže predstavovať značné bezpečnostné riziko, či už osobné alebo firemné. Čokoľvek od hesiel a kľúčov API až po osobné informácie môže tajne skončiť vo vašom potvrdení. A akonáhle je tam vonku v priestore projektu, ktokoľvek k nemu môže pristupovať a potenciálne narušiť bezpečnosť vášho alebo vášho tímu.

Tieto nehody sú možno ešte lepšími dôvodmi na vymazanie potvrdenia ako obyčajný zlý kód. Chybný kód môžete upraviť a nemusíte sa obávať, že zostane v histórii projektu, ale toto nie je riziko, ktoré by ste chceli podstúpiť s citlivými údajmi. Ak napríklad omylom potvrdíte súbor obsahujúci kľúče API, odstránením tohto odovzdania zabránite tomu, aby sa tento kľúč dostal do nesprávnych rúk.

Udržiavanie histórie v čistote

Ďalším pádnym dôvodom na vymazanie potvrdenia Git je udržiavať históriu projektu čistú a jednoduchú. Ako pracujete na projekte, vaša história odovzdania sa stáva čoraz viac preplnenou menšími aktualizáciami, experimentmi alebo zmenami, ktoré už nie sú relevantné. Keď sa chcete z akéhokoľvek dôvodu pozrieť do histórie, napríklad zistiť, prečo ste vykonali určitú zmenu alebo sa po experimente vrátiť do stabilného stavu, z neprehľadnej histórie sa môže stať problém.

Odstránením nepotrebných potvrdení udržíte svoju históriu projektu upratanú a pre vás a ostatných vo vašom tíme ju budete môcť jednoducho sledovať. To je ešte užitočnejšie pred zlúčením pobočky, aby ste mohli prezentovať jasnú, stručnú a relevantnú históriu tomu, kto kontroluje váš kód. Napríklad, ak máte niekoľko odovzdaní, ktoré boli len malými vylepšeniami funkcie, možno ich budete chcieť stlačiť do jedného odovzdania, aby ste udržali svoju históriu úhľadnú.

Osvedčené postupy a tipy

Pred odstránením odovzdania dodržujte niektoré osvedčené postupy, aby ste udržali svoj projekt funkčný a vyhli sa neúmyselným následkom.

Zálohujte svoju prácu

Pred odstránením akéhokoľvek odovzdania v systéme Git je dobré zálohovať svoju prácu, aj keď si myslíte, že by to nemalo cenu ponechať. Môže sa to zdať ako práca navyše, ale záloha je záchranná sieť v prípade, že veci nepôjdu podľa plánu.

Zálohu môžete vytvoriť vytvorením novej vetvy, ktorá odzrkadľuje aktuálny stav vášho úložiska. Napríklad pred odstránením odovzdania, ktoré zaviedlo novú funkciu, vytvorte záložnú vetvu „feature-backup“. To vám dá slobodu experimentovať a odstraňovať commity bez strachu zo straty dôležitej práce. Takže, ak si neskôr uvedomíte, že potrebujete niečo z vymazaného commitu, nestratili ste to definitívne. Ak sa rozhodnete, že túto zálohu už nepotrebujete, môžete odstrániť vetvu Git .

Neodstraňujte verejné záväzky

Pri práci s verejnými úložiskami, najmä v projektoch s otvoreným zdrojovým kódom alebo v tímových prostrediach, by ste mali byť mimoriadne opatrní pri odstraňovaní odovzdaní. Keď sa odovzdanie presunie do verejného úložiska a iní ho stiahnu, odstránenie tohto odovzdania môže zmiasť alebo rozptýliť všetkých zúčastnených a narušiť prácu. Je to forma vyťahovania koberca spod niekoho – nie je to príjemný zážitok, ale skôr bezohľadné. Ak musíte odstrániť odovzdanie, ktoré je už verejné, oznámte to vopred svojmu tímu alebo prispievateľom projektu, aby vedeli, čo sa deje. Takto je každý uvedomelý a môže tomu prispôsobiť svoju prácu.

Pre verejné úložiská použite možnosť Vrátiť späť

Ak stále chcete vrátiť späť zmeny vo verejnom úložisku, namiesto trvalého odstránenia odovzdania môžete vrátiť zlúčenie v Git . Na rozdiel od git reset, ktorý efektívne prepisuje históriu, „git revert“ vytvorí nové odovzdanie, ktoré zruší zmeny vykonané v predchádzajúcom odovzdaní.

Preto je používanie tohto príkazu oveľa bezpečnejšie a prehľadnejšie, najmä pri práci s ostatnými. Otvorene komunikujete členom svojho tímu, že ste možno urobili chybu a vraciate späť záväzok, ktorý to napraví. Ak ste poslali odovzdanie s významnou chybou, „git revert“ vám umožní rýchlo negovať účinky tejto chyby a zároveň zachovať históriu projektu nedotknutú. Ak tak urobíte, zachováte integritu histórie projektu a zachováte konzistentnosť lokálneho úložiska všetkých so vzdialeným.

Pred odstránením dvakrát skontrolujte

Jedným z najväčších rizík pri odstraňovaní odovzdaní v systéme Git je strata času a úsilia, ktoré ste do tohto odovzdania vložili. Aby ste tomu zabránili, skontrolujte všetky zmeny v každom potvrdení, ktoré chcete odstrániť. Na kontrolu odovzdania použite „git log alebo git show [commit hash]“. Ak odstraňujete potvrdenie, ktoré do vášho kódu pridalo niekoľko funkcií, uistite sa, že váš projekt tieto funkcie nepotrebuje na fungovanie alebo že sú replikované inde.

Zaviazať sa k tomu

Existuje mnoho dôvodov na vymazanie odovzdania na Git, ako je napríklad udržiavanie poriadku v histórii, odstraňovanie mätúcich chýb alebo ochrana citlivých informácií pred zvedavými očami. Bez ohľadu na dôvod, nezabudnite, že existujú dva spôsoby, ako to urobiť – „git reset“ a „git revert“, pričom každý slúži na iný účel, takže si vyberte ten, ktorý je pre váš projekt vhodný. Pre lepšiu prehľadnosť môžete tiež premenovať vetvu Git .

Museli ste niekedy odstrániť odovzdanie v Git? Aké sú vaše skúsenosti a máte nejaké tipy, o ktoré sa môžete podeliť? Zanechajte komentár nižšie a pokračujte v konverzácii.


Leave a Comment

Ako sa zbaviť choroby v DAYZ

Ako sa zbaviť choroby v DAYZ

DAYZ je hra plná šialených, nakazených ľudí v postsovietskej krajine Černarus. Zistite, ako sa zbaviť choroby v DAYZ a udržte si zdravie.

Návod na Windows 10: Synchronizácia nastavení počítača vo všetkých zariadeniach so systémom Windows 10

Návod na Windows 10: Synchronizácia nastavení počítača vo všetkých zariadeniach so systémom Windows 10

Naučte sa, ako synchronizovať nastavenia v systéme Windows 10. S touto príručkou prenesiete vaše nastavenia na všetkých zariadeniach so systémom Windows.

Ako zakázať funkciu otravných štuchnutí od Googlu

Ako zakázať funkciu otravných štuchnutí od Googlu

Ak vás obťažujú štuchnutia e-mailov, na ktoré nechcete odpovedať alebo ich vidieť, môžete ich nechať zmiznúť. Prečítajte si toto a zistite, ako zakázať funkciu štuchnutia v Gmaile.

Ako opraviť nefunkčnosť diaľkového ovládača Nvidia Shield?

Ako opraviť nefunkčnosť diaľkového ovládača Nvidia Shield?

Nvidia Shield Remote nefunguje správne? Tu máme pre vás tie najlepšie opravy, ktoré môžete vyskúšať; môžete tiež hľadať spôsoby, ako zmeniť svoj smartfón na televízor.

Ako vyriešiť problémy s Bluetooth v systéme Windows 10

Ako vyriešiť problémy s Bluetooth v systéme Windows 10

Bluetooth vám umožňuje pripojiť zariadenia a príslušenstvo so systémom Windows 10 k počítaču bez potreby káblov. Spôsob, ako vyriešiť problémy s Bluetooth.

Ako opraviť Windows 11 pomocou 6 metód

Ako opraviť Windows 11 pomocou 6 metód

Máte po inovácii na Windows 11 nejaké problémy? Hľadáte spôsoby, ako opraviť Windows 11? V tomto príspevku sme uviedli 6 rôznych metód, ktoré môžete použiť na opravu systému Windows 11 na optimalizáciu výkonu vášho zariadenia.

Oprava: Chyba „Táto aplikácia sa nedá spustiť na vašom počítači“.

Oprava: Chyba „Táto aplikácia sa nedá spustiť na vašom počítači“.

Ako opraviť: chybové hlásenie „Táto aplikácia sa nedá spustiť na vašom počítači“ v systéme Windows 10? Tu je 6 jednoduchých riešení.

Ako získať čo najviac bodov z Microsoft Rewards a ľahko zarobiť peniaze

Ako získať čo najviac bodov z Microsoft Rewards a ľahko zarobiť peniaze

Tento článok vám ukáže, ako maximalizovať svoje výhody z Microsoft Rewards na Windows, Xbox, Mobile a iných platforiem.

Ako hromadne zrušiť sledovanie na Instagrame

Ako hromadne zrušiť sledovanie na Instagrame

Zistite, ako môžete jednoducho hromadne prestať sledovať účty na Instagrame pomocou najlepších aplikácií, ako aj tipy na správne používanie.

Ako opraviť Nintendo Switch sa nezapne

Ako opraviť Nintendo Switch sa nezapne

Ako opraviť Nintendo Switch, ktoré sa nezapne? Tu sú 4 jednoduché riešenia, aby ste sa zbavili tohto problému.