freeCodeCamp/guide/arabic/miscellaneous/git-pull-vs-git-fetch/index.md

2.4 KiB

title localeTitle
Git Pull Vs Git Fetch Git Pull Vs Git Fetch

يتم استخدام هذين الأمرين بشكل منتظم من قبل مستخدمي git. دعونا نرى الفرق بين كلا الأمرين.

من أجل السياق ، يجدر بنا أن نتذكر أننا ربما نعمل في ريبو استنساخ. ما هو استنساخ؟ ببساطة نسخة من مستودع آخر. هو أساسا الحصول على نسختك الخاصة من رمز مصدر شخص آخر.

ومع ذلك ، للحفاظ على تحديث مستنسختك مع أي تغييرات قد تكون طبقت على النسخة الأصلية ، سوف تحتاج إلى إحضار تلك إلى استنساخك. هذا هو المكان الذي يأتي فيه fetch pull . git fetch هو الأمر الذي يخبر بوابة موقعك المحلية باسترداد أحدث معلومات بيانات التعريف من الأصل (حتى الآن لا يقوم بأي نقل للملفات. إنه أشبه بالتحقق لمعرفة ما إذا كان هناك أي التغييرات المتاحة). git pull من ناحية أخرى يفعل ذلك AND يجلب (نسخة) تلك التغييرات من مستودع بعيد.

على سبيل المثال

git pull origin ankur bugfix

أخذ بعيدا هو أن نأخذ في الاعتبار أن هناك عموما ما لا يقل عن ثلاث نسخ من مشروع على محطة العمل الخاصة بك. نسخة واحدة هي المستودع الخاص بك مع تاريخ التزامك الخاص (المحفوظ بالفعل ، لذلك أقول). النسخة الثانية هي نسخة عملك حيث تقوم بتحريرها وبناءها (لم تلتزم بعد بالرجوع). النسخة الثالثة هي نسختك المحلية "المخبأة" لمستودع بعيد (ربما الأصلي من حيث قمت باستنساخك). يمكنك استخدام git fetch لمعرفة التغييرات التي تمت في الريبو / الفرع البعيد منذ السحب الأخير. يفيد ذلك في السماح بالتحقق قبل إجراء سحب فعلي ، مما قد يؤدي إلى تغيير الملفات في الفرع الحالي ونسخة العمل (وربما يفقد تغييراتك ، وما إلى ذلك).

git fetch git diff ...origin