Преди да преминем към разликата между git fetch и git pull, нека разберем какво е git първо.
Git е система за контрол на разпределената версия (VCS), по-скоро като инструмент за проследяване на промените в изходния код от малки до големи проекти във времето. Това е съвместен подход да вкарате разработчици и програмисти от цял свят под един покрив, за да споделят един общ интерес - кодирането. Git е основно инструмент за управление на изходния код, използван за управление на проекти или набор от файлове, които се променят с течение на времето и ги каталогизира в определена структура на данни, наречена хранилища.
GitHub е най-популярното и широко използвано уеб базирано хранилище на Git. Извличане и издърпване са двете най-основни команди, за да се движите с Git и да управлявате git хранилища.
Git позволява на потребителите да поддържат локално хранилище, което е клонинг на централното хранилище, като съхраняват данни като серия от снимки.
Всеки път, когато извършите или направите някои промени в изходния код, Git прави моментна снимка на всички файлове / кодове в този момент и ги съхранява като препратки.
С обикновена push команда потребителите могат да изпращат своите ангажименти в главното хранилище, за да споделят своите версии с останалия свят.
Когато използвате командата git fetch, просто решите да извлечете промените, направени в отдалеченото хранилище, и да ги съхраните във вашата локална машина.
Въпреки това, той не интегрира промените в локалното ви хранилище. Това ви държи в течение с вашите колеги разработчици и с какво работят.
Командата за издърпване на Git се използва за изтегляне на промени в хранилището на Git от отдалечено хранилище и обединяване на тези промени във вашето локално хранилище.
Издърпването е основно git извличане, последвано от смисъла на git merge, след като успешно извлечете промените от отдалеченото хранилище, можете да го обедините с вашия местен клон, използвайки обикновен git merge.
Git pull е полезно, когато искате да актуализирате хранилището си с промените, направени в отдалеченото хранилище. Тя ви позволява да въведете промени, които други лица са ангажирани с вашето хранилище, които в крайна сметка се синхронизират с други хранилища с промените, които сте извършили.
Казано по-просто, той просто внася промените в отдалеченото хранилище, където съхранявате собствения си код.
Git извличане и издърпване на Git са двете най-важни команди, използвани за ефективно управление на git хранилища. Докато и двете команди се използват за изтегляне на нови данни от отдалечено хранилище, те го правят с много различни цели в ума. Докато 'git fetch' се използва за извличане на последните промени, направени в отдалеченото хранилище, той не обединява тези промени с вашето локално хранилище.
Git pull, от друга страна, не само изтегля промените от отдалеченото хранилище, но и ги интегрира с локалното хранилище.
Git fetch е безобидна команда, използвана за изтегляне и преглед на най-новите ангажименти, направени от други хора от клоновете за дистанционно проследяване, но без да обединява тези ангажименти в локалното ви хранилище. Той хваща промените от отдалеченото хранилище и ги съхранява във вашето местно хранилище.
Git издърпване е стенограма за git извличане, последвано от git merge, което автоматично обединява комисиите в локалното ви хранилище, без да се преглежда комитите.
Git позволява на потребителя да поддържа копие на собственото си локално хранилище, което е клонирането на централното хранилище, така че да се правят компромиси, които се извършват локално, без да се намесва кодът в главния хранилище. Fetch просто поддържа актуализирането на вашето локално копие на отдалеченото хранилище, като прехвърля поръчки от отдалечено хранилище във вашето локално хранилище. Импортирането на ангажименти в местните клонове ще ви позволи да сте в крак с промените, направени от други хора.
Издърпване носи промените във вашето хранилище на локален код, за да актуализира локалното хранилище с отдалеченото хранилище.
Командата за извличане е полезна, когато искате да видите какво работят всички останали, което ви улеснява да преглеждате комисиите, изпратени от други разработчици, преди да интегрирате промените с вашия локален хранилище. Можете да направите това с помощта на командата "git fetch", която грабва всички клонове от отдалеченото хранилище.
Можете да извършите издърпване, като използвате командата “git pull”, която извлича отдалеченото копие на клона и го слива с вашето локално копие. Това е абсолютно същото като използването на командата “git fetch”, последвана от “git merge”.
По принцип git pull е git fetch, последвано от git merge. Git извличането е основната команда, използвана за получаване на най-новите актуализации от git хранилището, което означава, когато работите като екип и искате да знаете над какво работи всеки друг разработчик и какви ангажименти се прехвърлят към отдалеченото хранилище.
По същество това, което правите, е да донесете промените в кода / файловете от отдалечения клон, който ви държи в течение с работата на всички останали, без да пречите на работното ви копие. Искане за изтегляне на git е това, което правите, за да актуализирате вашия локален хранилище с промените от отдалеченото хранилище.
Казано по-просто, извличането изтегля всички неща от отдалечен до локален клон, преди да ги интегрира в централното хранилище, докато git издърпва ваденето и обединява операциите в една команда.