كيفية التحقق من Remote Git Branch
لسحب فرع من مستودع بعيد ، استخدم الأمر “git fetch” ، ثم “git Branch -r” لسرد الفروع البعيدة. اختر الفرع الذي تريده واستخدم أمر النموذج “git checkout -b new-Branch-name origin / remote-Branch-name.” إذا كنت تستخدم مستودعات متعددة ، فقم بتغيير جزء “الأصل” من أمر الخروج إلى اسم جهاز التحكم عن بُعد الذي ترغب في سحب الفرع منه.
إذا كان فريق التطوير لديك يستخدم Git ، فستحتاج في النهاية إلى التحقق من عمل شخص آخر كفرع من مستودع بعيد. مثل معظم إجراءات الفروع في Git ، فإن التبديل إلى فرع بعيد هو في الواقع أمر بسيط للغاية.
Git والفروع وأجهزة التحكم عن بعد
فلسفة جيت هي التفرع كثيرًا. تسمح الفروع بالتطوير دون تغيير قاعدة الكود الرئيسية. عندما تكون مقتنعًا بأن الكود الجديد الذي تم اختباره جاهز ، فإنك تدمج فرعك الجديد في فرع آخر. عادةً ما يكون هذا هو الفرع الرئيسي أو الرئيسي ، ولكن يمكنك دمج أي فرعين.
بسبب هذه المرونة والطريقة الخفيفة والسريعة التي يتعامل بها Git مع الفروع والدمج ، تم تحويل التفرع. في أنظمة التحكم في الإصدارات الأقدم ، كان التفريع مشكلة كبيرة. كان التفرع والدمج بطيئًا وعرضة للخطأ. أعطى Git للمطورين تفرعات سهلة وسريعة تُستخدم لدعم العديد من مهام سير العمل المختلفة.
إذا كنت تعمل أو تطوعت كجزء من فريق التطوير باستخدام Git ، فسيكون لديك مستودع Git “مركزي” بعيدًا عن كمبيوتر كل مهندس برمجيات. يُعرف هذا بالمستودع البعيد أو “جهاز التحكم عن بُعد” فقط. إنه المكان الذي يتم فيه إرسال الالتزامات والتغييرات على المستودع المحلي الخاص بك عند إجراء دفعة.
بالطبع ، هذا ما يفعله المطورون الآخرون أيضًا. هذا يجعل من السهل التعاون. إذا كنت بحاجة إلى الوصول إلى عمل مطور آخر ، فما عليك سوى استرداد الكود الخاص به من فرع في المستودع البعيد. إذا احتاجوا إلى الوصول إلى عملك ، فسوف يستردون الرمز الخاص بك من فرع في المستودع الذي يتتبع أحد الفروع المحلية.
في Git ، يمكن أن يحتوي مشروع التطوير على أجهزة تحكم عن بُعد متعددة. ومع ذلك ، يمكن للفرع المحلي تتبع فرع بعيد واحد فقط. لذلك ، طالما أنك تعمل مع جهاز التحكم عن بُعد المناسب ، فإن التحقق من فرع بعيد به عدة أجهزة تحكم عن بُعد هو نفس استخدام جهاز تحكم عن بُعد واحد.
البحث عن الفروع المحلية الخاصة بك
تحتاج إلى تجنب تعارض الأسماء. إذا كان لديك فرع محلي يحمل نفس اسم الفرع البعيد الذي ستقوم بسداده ، فلديك خياران. يمكنك إعادة تسمية الفرع المحلي الخاص بك والتحقق من الفرع البعيد. بهذه الطريقة ، يكون للفرع المحلي الخاص بك الذي يتتبع الفرع البعيد نفس اسم الفرع البعيد. أو يمكنك التحقق من الفرع البعيد وإخبار Git بإنشاء فرع تتبع محلي باسم جديد.
لمعرفة أسماء الفروع في مستودعك المحلي ، استخدم الأمر git Branch.
git branch
يحتوي هذا المستودع المحلي على فرع رئيسي وثلاثة فروع أخرى. تشير علامة النجمة إلى الفرع الحالي. يتطلب الانتقال من فرع إلى فرع التحقق من الفرع الذي تريد العمل معه.
git checkout new-feature
git status
يقوم الأمر الأول بتغيير الفرع بالنسبة لنا ، بحيث تكون “الميزة الجديدة” هي الفرع الحالي. يتحقق الأمر git status من ذلك بالنسبة لنا.
يمكننا التنقل ذهابًا وإيابًا بين الفروع ، وإجراء تغييرات جديدة ، وسحب التحديثات من جهاز التحكم عن بُعد ، ودفع التحديثات المحلية إلى جهاز التحكم عن بُعد.
التحقق من فرع بعيد
هناك فرع في المستودع البعيد غير موجود على أجهزتنا. قام مطور يسمى Mary بإنشاء ميزة جديدة. نريد التبديل إلى ذلك الفرع البعيد حتى نتمكن من إنشاء هذا الإصدار من البرنامج محليًا.
إذا أجرينا عملية جلب ، فسيسحب Git البيانات الوصفية من المستودع البعيد.
git fetch
نظرًا لأن هذا هو أول عملية جلب نقوم بها منذ أن دفعت ماري فرعها إلى المستودع البعيد ، فقد قيل لنا أن هناك فرعًا جديدًا يسمى “origin / mary-feature”. الاسم الافتراضي لأول مستودع بعيد تمت إضافته إلى مشروع هو “الأصل”.
سواء رأينا هذه الرسالة أم لا ، يمكننا دائمًا أن نطلب من Git سرد الفروع في المستودع البعيد.
يخبر الخيار -r (عن بُعد) Git بالإبلاغ عن الفروع الموجودة في المستودع البعيد.
git branch -r
النقطة التي يجب ملاحظتها هنا هي أن Git تتحقق من نسختها المحلية من البيانات الوصفية لجهاز التحكم عن بُعد. لهذا السبب استخدمنا الأمر git fetch للتأكد من أن النسخة المحلية من البيانات الوصفية محدثة.
بمجرد تحديد الفرع الذي نريده ، يمكننا المضي قدمًا والتحقق منه. نستخدم الأمر git checkout مع الخيار -b (الفرع) ، متبوعًا بالاسم الذي سنستخدمه للفرع المحلي ، متبوعًا باسم الفرع البعيد.
git checkout -b mary-feature origin/mary-feature
يمكننا أن نرى أننا قمنا بفحص الفرع البعيد وأنشأنا فرعًا محليًا سيتتبع التغييرات في الفرع البعيد.
git branch
فرعنا المحلي الجديد هو الآن فرعنا العامل الحالي.
التعامل مع اشتباكات الأسماء
إذا كان لديك فرع محلي له نفس اسم الفرع البعيد ، فيمكنك إما إعادة تسمية الفرع المحلي قبل التحقق من الفرع البعيد ، أو التحقق من الفرع البعيد وتحديد اسم فرع محلي مختلف.
لسحب الفرع البعيد إلى فرع محلي يحمل اسمًا مختلفًا ، يمكننا استخدام نفس الأمر الذي استخدمناه سابقًا ، واختيار اسم فرع محلي جديد.
git checkout -b mary-test origin/mary-feature
يؤدي هذا إلى إنشاء فرع محلي يسمى “mary-test” والذي سيتتبع الالتزامات المحلية لهذا الفرع. ستذهب الدفعات إلى فرع “Origin / mary-feature” البعيد.
ربما تكون هذه هي أفضل طريقة للتعامل مع تضارب الأسماء المحلية. إذا كنت تريد حقًا الاحتفاظ باسم الفرع المحلي والبعيد كما هو ، فستحتاج إلى إعادة تسمية الفرع المحلي قبل التحقق من جهاز التحكم عن بُعد. إعادة تسمية فرع أمر تافه في Git.
git branch -m mary-feature old-mary-branch
أنت الآن واضح في تسجيل الخروج من فرع “origin / mary-feature” البعيد.
التعامل مع المستودعات البعيدة المتعددة
إذا كان لديك العديد من المستودعات البعيدة التي تم تكوينها ، فأنت بحاجة إلى الحرص على أنك تعمل مع المستودع المناسب عند التحقق من الفرع البعيد.
لسرد مستودعاتك البعيدة ، استخدم الأمر عن بعد مع الخيار -v (عرض).
git remote -v
لمشاهدة جميع الفروع المتاحة ، نحتاج إلى جلب البيانات الوصفية من جميع أجهزة التحكم عن بُعد الخاصة بنا ، ثم سرد الفروع البعيدة.
git fetch --all
git branch --all
يمكننا أن نرى الفرع الذي نريده في جهاز التحكم عن بعد “الأصل”. أمر التحقق من ذلك بنفس التنسيق الذي استخدمناه بالفعل. نحتاج إلى تحديد الاسم البعيد ، “origin” ، وكذلك اسم الفرع ، “mary-feature.”
git checkout -b mary-feature origin/mary-feature
قبل الخروج
قبل الدفع ، ضع بعض الأشياء في الاعتبار ، وستكون بخير.
تأكد من تجنب تضارب الأسماء. إذا كان لديك فرع محلي يحمل نفس اسم الفرع البعيد ، فحدد ما إذا كنت ستعيد تسمية الفرع المحلي أو تنشئ فرعًا باسم مختلف لتتبع الفرع البعيد.
إذا كنت تستخدم مستودعات بعيدة متعددة ، فتأكد من استخدام جهاز التحكم عن بُعد الصحيح.