Git Fetch vs Pull: Koja je razlika između naredbi Git Fetch i Git Pull?

Git pulli fetchsu dvije naredbe koje korisnici Gita redovito koriste. Pogledajmo razliku između obje naredbe.

Radi konteksta, vrijedi se prisjetiti da vjerojatno radimo u klonu. Što je klon? To je jednostavno duplikat drugog spremišta. To je u osnovi dobivanje vlastite kopije tuđeg izvornog koda.

To je reklo, da biste redovito ažurirali svoj klon sa svim promjenama koje su primijenjene na originalu, morat ćete ih dovesti u svoj klon.

Tu fetchi pulluđite.

git fetch je naredba koja vašem lokalnom gitu govori da preuzme najnovije podatke o meta podacima iz izvornika (ali ne vrši prijenos datoteka. To je više poput provjere postoje li dostupne promjene).

git pull s druge strane to čini I donosi (kopira) te promjene iz udaljenog spremišta.

Na primjer:

git pull origin ankur bugfix

Za poneti treba imati na umu da se na vašoj radnoj stanici obično nalaze najmanje tri kopije projekta.

  • Jedna kopija je vaše vlastito spremište s vlastitom poviješću urezivanja (već spremljena, da tako kažem).
  • Druga kopija je vaša radna kopija u kojoj uređujete i izrađujete (još nije predana vašem repo-u).
  • Treća kopija je vaša lokalna "predmemorirana" kopija udaljenog spremišta (vjerojatno original s mjesta na kojem ste klonirali svoje).

Možete koristiti git fetchza poznavanje promjena izvršenih u udaljenom repo / ogranku od zadnjeg povlačenja. Ovo je korisno za provjeru prije stvarnog povlačenja, što bi moglo promijeniti datoteke u vašoj trenutnoj grani i radnoj kopiji (i potencijalno izgubiti promjene itd.).

git fetch git diff ...origin