Vysvetlenie Git Pull

git pull je príkaz Git používaný na aktualizáciu lokálnej verzie úložiska zo vzdialeného.

Je to jeden zo štyroch príkazov, ktoré vyzývajú sieťovú interakciu pomocou Gitu. Štandardne git pullrobí dve veci.

  1. Aktualizuje aktuálnu miestnu pracovnú pobočku (momentálne odhlásená pobočka)
  2. Aktualizuje vetvy vzdialeného sledovania pre všetky ostatné vetvy.

git pullnačíta ( git fetch) nové potvrdí a zlúči ( git merge) tieto do vašej miestnej pobočky.

Syntax tohto príkazu je nasledovná:

# General format git pull OPTIONS REPOSITORY REFSPEC # Pull from specific branch git pull REMOTE-NAME BRANCH-NAME

v ktorom:

  • OPTIONS sú možnosti príkazu, napríklad--quietalebo--verbose. Viac informácií o rôznych možnostiach si môžete prečítať v dokumentácii Git
  • REPOSITORY je adresa URL vášho úložiska. Príklad: //github.com/freeCodeCamp/freeCodeCamp.git
  • REFSPEC určuje, ktoré refs sa majú načítať a ktoré lokálne refs sa majú aktualizovať
  • REMOTE-NAME je názov vášho vzdialeného úložiska. Napríklad: pôvod .
  • BRANCH-NAME je názov vašej pobočky. Napríklad: rozvíjať .

Poznámka

Ak máte nezáväzné zmeny, zlučovacia časť git pullpríkazu zlyhá a vaša lokálna pobočka bude nedotknutá.

Preto by ste mali vždy vykonať zmeny v pobočke predtým, ako stiahnete nové potvrdenia zo vzdialeného úložiska.

Obsah

  • Použitím git pull
  • Kontrola distribuovanej verzie
  • git fetch + git merge
  • git pull v IDE

Pomocou git pull

Používa sa git pullna aktualizáciu lokálneho úložiska z príslušného vzdialeného úložiska. Príklad: Keď pracujete lokálne master, vykonajte príkaz git pullna aktualizáciu miestnej kópie mastera na aktualizáciu ostatných pobočiek vzdialeného sledovania. (Viac informácií o vetvách vzdialeného sledovania v ďalšej časti.)

Existuje však niekoľko vecí, ktoré je potrebné mať na pamäti, aby bol tento príklad pravdivý:

Miestne úložisko má prepojené vzdialené úložisko

  • Skontrolujte to vykonaním git remote -v
  • Ak existuje viac diaľkových ovládačov, git pullnemusí byť dostatok informácií. Možno budete musieť zadať git pull originalebo git pull upstream.

Pobočka, do ktorej ste momentálne odhlásení, má zodpovedajúcu pobočku vzdialeného sledovania

  • Skontrolujte to vykonaním git status. Ak nie je vzdialená pobočka sledovanie, Git nevie, kam vytiahnuť informácie z .

Kontrola distribuovanej verzie

Git je systém riadenia distribuovanej verzie (DVCS). Vďaka DVCS môžu vývojári pracovať na rovnakom súbore súčasne v samostatných prostrediach. Po zatlačení kódu do zdieľaného vzdialeného úložiska môžu ďalší vývojári načítať zmenený kód.

Sieťové interakcie v Gite

V Gite existujú iba štyri príkazy, ktoré vyvolávajú sieťové interakcie. Miestne úložisko nevie o zmenách vykonaných vo vzdialenom úložisku, kým nebude požiadané o informácie. Vzdialené úložisko si nie je vedomé miestnych zmien, kým nebudú odoslané potvrdenia.

Štyri sieťové príkazy sú:

  • git clone
  • git fetch
  • git pull
  • git push

Pobočky v DVCS

Pri práci s Gitom môže mať pocit, že všade existuje veľa kópií rovnakého kódu. V každej vetve sú rôzne verzie rovnakého súboru. A rôzne kópie rovnakých vetiev na počítači každého vývojára a na diaľkovom ovládaní. Na sledovanie toho používa Git niečo, čo sa nazýva pobočky vzdialeného sledovania .

Ak vykonávate git branch --allv rámci úložiska Git, vetvy vzdialeného sledovania sa zobrazia červenou farbou. Toto sú kópie kódu, ktorý je iba na čítanie, ako sa zobrazuje na diaľkovom ovládaní. (Kedy bola posledná sieťová interakcia, ktorá by priniesla informácie lokálne? Pamätáte si, kedy boli tieto informácie naposledy aktualizované. Informácie vo vetvách vzdialeného sledovania odrážajú informácie z tejto interakcie.)

Vďaka pobočkám so vzdialeným sledovaním môžete pracovať v Gite na viacerých pobočkách bez sieťovej interakcie. Zakaždým, keď vykonáte git pullalebo vykonáte git fetchpríkazy, aktualizujete vetvy vzdialeného sledovania .

git fetch plus git zlúčiť

git pullje kombinovaný príkaz rovný git fetch+ git merge.

načítať git

Sám o sebe git fetchaktualizuje všetky vetvy vzdialeného sledovania v miestnom úložisku. V žiadnom z miestnych pracovných odborov sa v skutočnosti neprejavia žiadne zmeny.

git zlúčiť

Bez akýchkoľvek argumentov git mergezlúči zodpovedajúcu vetvu vzdialeného sledovania s miestnou pracovnou vetvou.

git pull

git fetchaktualizuje pobočky vzdialeného sledovania. git mergeaktualizuje aktuálnu vetvu o zodpovedajúcu vetvu vzdialeného sledovania. Pomocou git pulltohto nástroja získate obe časti týchto aktualizácií. To však znamená, že ak ste odhlásení do featurepobočky a vykonáte git pull, pri zúčtovaní masternebudú zahrnuté žiadne nové aktualizácie. Kedykoľvek vykonáte platbu v inej pobočke, ktorá môže mať nové zmeny, je vždy dobré vykonať git pull.

git natiahnite IDE

Bežný jazyk v iných IDES nemusí toto slovo obsahovať pull. Ak dávate pozor na slová, git pullale nevidíte ich, hľadajte syncradšej dané slovo .

načítanie vzdialeného PR (Pull Request) do lokálneho repo

Na účely kontroly a podobne by sa správy PR vo vzdialenom serveri mali načítať do miestneho repo. Na git fetchdosiahnutie tohto účelu môžete použiť nasledujúci príkaz.

git fetch origin pull/ID/head:BRANCHNAME

ID je ID žiadosti o načítanie a BRANCHNAME je názov pobočky, ktorú chcete vytvoriť. Po vytvorení pobočky sa môžete git checkoutprepnúť na príslušnú brach.

Ďalšie zdroje na serveri git na stránke guide.freecodecamp.org

  • Git zlúčiť
  • Pokladňa Git
  • Git spáchať
  • Git skrýša
  • Gitová vetva