Git وGitHub / الأساسي: نموذج Git المحلي / الدرس 6
البعيد والجلب ومراجع التتبع
افهم المعرفة المحلية بمستودع آخر قبل اختيار التكامل أو النشر.
في هذه الصفحة
أهداف الدرس
- ميّز اسم البعيد ومرجع تتبعه وفرع المنبع.
- افحص التشعب واختر سياسة تكامل صريحة.
البعيد إعداد لمستودع آخر
اسم مثل origin لقب محلي لروابط وقواعد جلب لا سلطة مركزية مدمجة. ينشئه الاستنساخ عادة ويمكن تغييره. origin/main سجل محلي لما شوهد ويحدث بالجلب غالباً، لا منظر حي لكل إيداع زميل. تحدد علاقة المنبع المقارنة أو التكامل الافتراضي ولا تمنح وصولاً أو تضمن بقاء الفرع.
افحص معرفة الجلب دون تحريك فرعك
ينزل الجلب الكائنات ويحدث مراجع مختارة عادة دون تحريك الفرع أو الملفات، فيسمح بفحص التاريخ قبل التكامل. يستخدم التحقق هنا مستودع ملفات محلياً مؤقتاً لا خدمة أو بعيداً فعلياً. الجزء توضيحي غير قابل للتشغيل لأن origin سياقي. تحقق قبل شبكة حقيقية من المستودع والمصادقة والسياسة دون كشف اعتمادات. ليس رابط يحوي رمزاً صيغة تعليم أو سجل آمنة.
git fetch origin
git log --oneline --left-right main...origin/main
git diff --stat main origin/main
يسمح بالمختبر المحلي المضبوط منفصلاً فقط. يسرد السجل الفريد للطرفين ويقارن الفرق محتوى الرأسين. يعتمد المخرج على التاريخ ولا ينفذ أي دفع بالدورة.
اقرأ التقدم والتأخر كأعداد وصول
تعد الأرقام إيداعات يصلها طرف دون الآخر لا الأسطر أو الخطر أو تعديلات الأشخاص. تعتمد على حداثة التتبع وقد يتقدم الفرع ويتأخر معاً. يستخدم العد مراجع محلية بعد جلب مختبر. فسر الرقمين بترتيب الوسائط ثم افحص الإيداعات. لا تحل التشعب بمحو تاريخ بعيد لأن الملخص غير مريح.
git rev-list --left-right --count main...origin/main
git branch -vv
إذا انفرد المحلي بإيداع وانفرد origin/main باثنين فالعد 1 ثم 2 يفصل بينهما فراغ. يضيف branch -vv المرجع والمنبع وتختلف معرّفاته وحداثته.
اختر التكامل بدلاً من الاعتماد على الافتراض
يجمع git pull الجلب والتكامل المختار بالخيارات والإعداد، كتقدم فقط أو دمج أو إعادة أساس. تختلف الافتراضات والرفض بالإصدار فلا تعلّمه كتسلسل ثابت شامل. يفيد الجلب ثم الفحص للتعلم. يوقف --ff-only التشعب لقرار، وتنتج إعادة أساس الموضوع الخاص هويات جديدة. يبقى عرف المشترك اتفاق تعاون لا راحة محلية.
عامل النشر كفعل مفوض منفصل
يطلب الدفع تحديث المراجع وقد يرفضه النسب أو الصلاحيات أو الحماية أو القواعد والفحوص. لا تعني المصادقة حق تغيير كل فرع. يحمي رفض غير التقدم إيداعات لا يتضمنها المقترح. احفظ عمل الزملاء وادمجه وفق الاتفاق قبل النشر. ليست خيارات القسر مزامنة عادية وتقلل lease بعض السباقات لا تعوض التنسيق. تشرح الدورة بلا دفع أو تغيير بعيد فعلي أو اعتماد حقيقي.
الأخطاء الشائعة وإصلاحها
يُفهم origin/main كحالة خادم حية
- لماذا يحدث؟
- عومل التتبع المحلي كعرض حي.
- كيف تصلحه؟
- حدث بمسار الجلب المفوض وافحص.
- كيف تتجنب تكراره؟
- سجل وقت اكتساب المعرفة البعيدة.
يعيد pull كتابة موضوع خاص فجأة
- لماذا يحدث؟
- جاءت إعادة الأساس من خيار أو إعداد.
- كيف تصلحه؟
- افحص السياسة واحفظ مراجع التعافي.
- كيف تتجنب تكراره؟
- استخدم خيارات تكامل صريحة أثناء التعلم.
يرفض الدفع رغم تسجيل الدخول
- لماذا يحدث؟
- يمنع النسب أو الخادم التحديث.
- كيف تصلحه؟
- اقرأ الرفض وافحص علاقة الفرع.
- كيف تتجنب تكراره؟
- افصل المصادقة والتفويض وأمان الرسم.
اختبر فهمك
1. فرع متقدم بواحد ومتأخر باثنين. ماذا يثبت؟
اعرض الحل المشروح
ينفرد كل رأس بإيداعات وفق المراجع. افحصها وحداثة التتبع ثم اختر الدمج أو إعادة الخاص المتفق عليها. لا تبرر الأرقام إسقاط البعيد.
2. ينجح الجلب. هل دمج الفرع الجديد؟
اعرض الحل المشروح
ليس عادة؛ يحدث الجلب الكائنات والمعرفة ويبقى المحلي. تحقق من الرأس وكامل وفق السياسة. لا تخلط تحديث التتبع بإتمام الدمج.
أهم ما تعلمته
- مراجع التتبع ملاحظات محلية.
- الجلب والتكامل والنشر قرارات منفصلة.
- احمِ تاريخ الزملاء واتبع سياسة الخادم.