logo

Git Stash

Niekedy chcete zmeniť pobočky, ale pracujete na neúplnej časti vášho aktuálneho projektu. Nechcete sa zaviazať k polovičnej práci. Git stashing vám to umožňuje. The príkaz git stash umožňuje prepínať vetvy bez potvrdenia aktuálnej vetvy.

Nasledujúci obrázok ukazuje vlastnosti a úlohu ukladania týkajúce sa úložiska a pracovného adresára.

Git Stash

Vo všeobecnosti má skrýša význam „ niečo bezpečne uložte na skryté miesto .' Význam v Git je rovnaký aj pre skrýšu; Git dočasne bezpečne ukladá vaše údaje bez toho, aby sa zaviazal.

Stashing preberá chaotický stav vášho pracovného adresára a dočasne ho ukladá na ďalšie použitie. S git stash je dostupných veľa možností. Niektoré užitočné možnosti sú uvedené nižšie:

    Git skrýšu Uložiť skrýšu Git Zoznam skrýš Git Použiť Git stash Zmeny Git stash Git stash pop Git stash drop Vyčistite skrýšu Pobočka Git stash

Ukrývacie práce

Poďme to pochopiť pomocou scenára v reálnom čase. Urobil som zmeny v mojom projekte GitExample2 v dvoch súboroch z dvoch odlišných vetiev. Som v neusporiadanom stave a ešte som úplne neupravil žiadny súbor. Preto si ho chcem dočasne uložiť na budúce použitie. Môžeme ho uložiť a uložiť ako jeho aktuálny stav. Aby sme to ukryli, pozrime sa na aktuálny stav úložiska. Ak chcete skontrolovať aktuálny stav archívu, spustite príkaz git status. Príkaz git status sa používa ako:

char + int v jazyku Java

Syntax:

 $ git status 

Výkon:

Git Stash

Z vyššie uvedeného výstupu môžete vidieť stav, že existujú dva nesledované súbory design.css a newfile.txt k dispozícii v úložisku. Na dočasné uloženie môžeme použiť príkaz git stash. Príkaz git stash sa používa ako:

Syntax:

 $ git stash 

Výkon:

Git Stash

V danom výstupe sa práca uloží príkazom git stash. Môžeme skontrolovať stav úložiska.

Git Stash

Ako môžete vidieť, moja práca je len schovaná v súčasnej polohe. Teraz je adresár vyčistený. V tomto bode môžete prepínať medzi vetvami a pracovať na nich.

Git Stash Save (Uloženie skrýš so správou):

V systéme Git môžu byť zmeny uložené v správe. Ak chcete uložiť zmenu do správy, spustite nasledujúci príkaz:

Syntax:

 $ git stash save '' 

Výkon:

Git Stash

Vyššie uvedená skrýša sa uloží so správou

Git Stash List (skontrolujte uložené skrýše)

Ak chcete skontrolovať uložené skrýše, spustite nasledujúci príkaz:

Syntax:

 $ git stash list 

Výkon:

Git Stash

Vo vyššie uvedenom prípade som vytvoril jednu skrýšu, ktorá sa zobrazuje ako „ stash@{0}: WIP na teste: súbor CSS 0a1a475 '.

linux make

Ak máme viac ako jednu skrýšu, potom sa zobrazia všetky skrýše s rôznym ID skrýše. Zvážte nasledujúci výstup:

Git Stash

Zobrazí všetky skrýše s indexovaním ako skrýš@{0}: skrýš@{1}: a tak ďalej.

Použiť Git Stash

Zmeny, ktoré ste práve uložili, môžete znova použiť pomocou príkazu git stash. Ak chcete použiť odovzdanie, použite príkaz git stash, za ktorým nasleduje voľba apply. Používa sa ako:

Syntax:

 $ git stash apply 

Výkon:

Git Stash

Vyššie uvedený výstup obnoví poslednú skrýšu. Ak teraz skontrolujete stav úložiska, zobrazí sa zmeny vykonané v súbore. Zvážte nižšie uvedené výkon:

Git Stash

Z vyššie uvedeného výstupu môžete vidieť, že úložisko je obnovené do predchádzajúceho stavu pred uložením. Zobrazuje výstup ako „ Zmeny nie sú pripravené na odovzdanie .'

V prípade viac ako jednej skrýše môžete použiť príkaz 'git stash apply' nasledovaný id indexu stash na použitie konkrétneho potvrdenia. Používa sa ako:

Syntax:

 $ git stash apply 

Zvážte nasledujúci výstup:

Výkon:

Git Stash

Ak skrýšu nešpecifikujeme, Git vezme najnovšiu skrýšu a pokúsi sa ju použiť.

Zmeny Git Stash

Môžeme sledovať skrýše a ich zmeny. Ak chcete vidieť zmeny v súbore pred a po operácii ukladania, spustite nasledujúci príkaz:

Syntax:

 $ git stash show 

Vyššie uvedený príkaz zobrazí súbor, ktorý je uložený, a zmeny v ňom vykonané. Zvážte nasledujúci výstup:

Výkon:

Git Stash

Vyššie uvedený výstup ilustruje, že existujú dva súbory, ktoré sú odložené, a boli do nich vykonané dve vloženia.

Môžeme presne sledovať, aké zmeny sú v súbore vykonané. Ak chcete zobraziť zmenený obsah súboru, vykonajte nasledujúci príkaz:

Syntax:

 $ git stash show -p 

Tu -p znamená čiastočnú skrýšu. Daný príkaz zobrazí upravené súbory a obsah, zvážte nasledujúci výstup:

Výkon:

zoznam triediť pole
Git Stash

Vyššie uvedený výstup zobrazuje názov súboru so zmeneným obsahom. Funguje rovnako ako príkaz git diff. The git rozdiel príkaz tiež zobrazí presný výstup.

Git Stash Pop (opätovné použitie skrytých zmien)

Git umožňuje používateľovi znovu použiť predchádzajúce odovzdania pomocou príkazu git stash pop. Voľba vyskakovania odstráni zmeny zo skrýše a aplikuje ich na váš pracovný súbor.

Príkaz git stash pop je celkom podobný príkazu git stash apply. Hlavným rozdielom medzi oboma týmito príkazmi je príkaz stash pop, ktorý po použití odstráni skrýšu zo zásobníka.

Syntax:

 $ git stash pop 

Vyššie uvedený príkaz znova použije predchádzajúce príkazy na úložisko. Zvážte výstup uvedený nižšie.

Výkon:

Git Stash

Git Stash Drop (Unstash)

The git stash drop príkaz sa používa na odstránenie skrýše z frontu. Vo všeobecnosti vymaže najnovšiu skrýšu. Pred použitím príkazu stash drop je potrebné postupovať opatrne, pretože je ťažké ho vrátiť späť, ak ho raz použijete.

Jediný spôsob, ako to vrátiť, je, ak po odstránení skrýše nezatvoríte terminál. Príkaz stash drop sa použije ako:

Syntax:

 $ git stash drop 

Výkon:

Git Stash

Vo vyššie uvedenom výstupe je najnovšia skrýša (stash@{0}) bol vypustený z daných troch skrýš. Príkaz stash list zobrazí zoznam všetkých dostupných skrýš vo fronte.

Môžeme tiež odstrániť konkrétnu skrýšu z frontu. Ak chcete odstrániť konkrétnu skrýšu z dostupných skrýš, odovzdajte id skrýše do príkazu stash drop. Bude spracované ako:

Syntax:

 $ git stash drop 

Predpokladajme, že mám vo fronte k dispozícii dve skrýše a nechcem zahodiť svoju najnovšiu skrýšu, ale chcem odstrániť staršiu. Potom bude fungovať takto:

 $ git stash drop stash@{1} 

Zvážte nasledujúci výstup:

Git Stash

Vo vyššie uvedenom výstupe, commit stash@{1} bol odstránený z poradia.

Git Stash Clear

The git skrýša jasné príkaz umožňuje vymazať všetky dostupné skrýše naraz. Ak chcete odstrániť všetky dostupné skrýše, použite nasledujúci príkaz:

Syntax:

 $ git stash clear 

odstráni všetky skrýše, ktoré existujú v úložisku.

Výkon:

Git Stash

Vo vyššie uvedenom výstupe sa odstránia všetky skrýše. Príkaz git stash list je prázdny, pretože v archíve nie sú dostupné žiadne skrýše.

Pobočka Git Stash

Ak ste schovali nejakú prácu na konkrétnej vetve a pokračujte v práci na tejto vetve. Potom to môže spôsobiť konflikt počas zlučovania. Preto je dobré ukladať prácu na samostatnú vetvu.

Príkaz git stash branch umožňuje užívateľovi ukladať prácu do samostatnej vetvy, aby sa predišlo konfliktom. Syntax pre túto vetvu je nasledovná:

Syntax:

reťazec prevodníka na dátum
 $ git stash branch 

Vyššie uvedený príkaz vytvorí novú vetvu a prenesie na ňu uloženú prácu. Zvážte nasledujúci výstup:

Výkon:

Git Stash

Vo vyššie uvedenom výstupe sa odložená práca prenesie do novovytvorenej pobočky testovania. Vyhnete sa tak konfliktu zlučovania na hlavnej vetve.