كيفية التحقق من فرع Git البعيد

نشرت: 2023-01-23
كمبيوتر محمول Linux يعرض موجه bash
fatmawati achmad zaenuri / Shutterstock.com
لسحب فرع من مستودع بعيد ، استخدم الأمر "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 بإنشاء فرع تتبع محلي باسم جديد.

لمعرفة أسماء الفروع في مستودعك المحلي ، استخدم الأمر git branch .

 فرع بوابة 

إدراج الفروع المحلية بأمر git Branch

يحتوي هذا المستودع المحلي على فرع رئيسي وثلاثة فروع أخرى. تشير علامة النجمة إلى الفرع الحالي. يتطلب الانتقال من فرع إلى فرع التحقق من الفرع الذي تريد العمل معه.

 بوابة الخروج ميزة جديدة
 حالة بوابة 

التحقق من فرع محلي باستخدام الأمر git checkout

يقوم الأمر الأول بتغيير الفرع بالنسبة لنا ، بحيث تكون "الميزة الجديدة" هي الفرع الحالي. يتحقق الأمر git status من ذلك بالنسبة لنا.

يمكننا التنقل ذهابًا وإيابًا بين الفروع ، وإجراء تغييرات جديدة ، وسحب التحديثات من جهاز التحكم عن بُعد ، ودفع التحديثات المحلية إلى جهاز التحكم عن بُعد.

ذات صلة: كيفية تحديث وصيانة فروع Git المنفصلة

التحقق من فرع بعيد

يوجد فرع في المستودع البعيد غير موجود على أجهزتنا. قام مطور يسمى Mary بإنشاء ميزة جديدة. نريد التبديل إلى ذلك الفرع البعيد حتى نتمكن من إنشاء هذا الإصدار من البرنامج محليًا.

إذا أجرينا عملية fetch ، فسيسحب Git البيانات الوصفية من المستودع البعيد.

 جلب بوابة 

استخدام الأمر git fetch لاسترداد البيانات الأولية حول مستودع بعيد

نظرًا لأن هذا هو أول عملية fetch نقوم بها منذ أن دفعت ماري فرعها إلى المستودع البعيد ، فقد أخبرنا أن هناك فرعًا جديدًا يسمى "original / mary-feature". الاسم الافتراضي لأول مستودع بعيد تمت إضافته إلى مشروع هو "الأصل".

سواء رأينا هذه الرسالة أم لا ، يمكننا دائمًا أن نطلب من Git سرد الفروع في المستودع البعيد.

يخبر الخيار -r (عن بُعد) Git بالإبلاغ عن الفروع الموجودة في المستودع البعيد.

 فرع بوابة -r 

استخدام الأمر git Branch -r لسرد الفروع البعيدة

النقطة التي يجب ملاحظتها هنا هي أن Git تتحقق من نسختها المحلية من البيانات الوصفية لجهاز التحكم عن بُعد. لهذا السبب استخدمنا الأمر git fetch للتأكد من أن النسخة المحلية من البيانات الوصفية محدثة.

كيفية اختيار نموذج Git Workflow & Branching Model المناسب لفريقك
ذات صلة كيفية اختيار نموذج Git لسير العمل والتفريع المناسب لفريقك

بمجرد تحديد الفرع الذي نريده ، يمكننا المضي قدمًا والتحقق منه. نستخدم الأمر git checkout مع الخيار -b (الفرع) ، متبوعًا بالاسم الذي سنستخدمه للفرع المحلي ، متبوعًا باسم الفرع البعيد.

 بوابة الخروج -b ماري-ميزة المنشأ / ماري-الميزة 

التحقق من فرع بعيد باستخدام الأمر git checkout -b

يمكننا أن نرى أننا قمنا بفحص الفرع البعيد وأنشأنا فرعًا محليًا سيتتبع التغييرات في الفرع البعيد.

 فرع بوابة 

إدراج الفروع المحلية باستخدام الأمر git Branch ، مع تحديد النسخة التي تم إنشاؤها حديثًا من الفرع البعيد باعتبارها الفرع الحالي

فرعنا المحلي الجديد هو الآن فرعنا العامل الحالي.

التعامل مع اشتباكات الأسماء

إذا كان لديك فرع محلي له نفس اسم الفرع البعيد ، فيمكنك إما إعادة تسمية الفرع المحلي قبل التحقق من الفرع البعيد ، أو التحقق من الفرع البعيد وتحديد اسم فرع محلي مختلف.

لسحب الفرع البعيد إلى فرع محلي يحمل اسمًا مختلفًا ، يمكننا استخدام نفس الأمر الذي استخدمناه سابقًا ، واختيار اسم فرع محلي جديد.

 بوابة الخروج-ب ماري-اختبار الأصل / ماري-ميزة 

التحقق من فرع بعيد باستخدام الأمر git checkout -b مع وجود فرع محلي له اسم مختلف عن الفرع البعيد

يؤدي هذا إلى إنشاء فرع محلي يسمى "mary-test" والذي سيتتبع الالتزامات المحلية لهذا الفرع. ستذهب الدفعات إلى فرع "Origin / mary-feature" البعيد.

ربما تكون هذه هي أفضل طريقة للتعامل مع تضارب الأسماء المحلية. إذا كنت تريد حقًا الاحتفاظ باسم الفرع المحلي والبعيد كما هو ، فستحتاج إلى إعادة تسمية فرعك المحلي قبل التحقق من جهاز التحكم عن بُعد. إعادة تسمية فرع أمر تافه في Git.

 بوابة فرع -م ماري-ميزه فرع ماري القديم 

إعادة تسمية فرع باستخدام الأمر git Branch -m

أنت الآن واضح لسحب فرع "Origin / mary-feature" البعيد.

التعامل مع المستودعات البعيدة المتعددة

إذا كان لديك العديد من المستودعات البعيدة التي تم تكوينها ، فأنت بحاجة إلى الحرص على أنك تعمل مع المستودع المناسب عند التحقق من الفرع البعيد.

لسرد مستودعاتك البعيدة ، استخدم الأمر remote مع الخيار -v (عرض).

 بوابة التحكم عن بعد- v 

سرد المستودعات البعيدة باستخدام الأمر git remote -v

لمشاهدة جميع الفروع المتاحة ، نحتاج إلى جلب البيانات الوصفية من جميع أجهزة التحكم عن بُعد الخاصة بنا ، ثم سرد الفروع البعيدة.

 git fetch - all
 فرع بوابة - الكل 

استخدام git fetch --all لتحديث البيانات الوصفية المحلية واستخدام فرع git --all لسرد جميع الفروع المحلية والبعيدة

يمكننا أن نرى الفرع الذي نريده في جهاز التحكم عن بعد "الأصل". أمر التحقق من ذلك هو بنفس التنسيق الذي استخدمناه بالفعل. نحتاج إلى تحديد الاسم البعيد ، "origin" ، وكذلك اسم الفرع ، "mary-feature."

 بوابة الخروج -b ماري-ميزة المنشأ / ماري-الميزة 

التحقق من فرع بعيد باستخدام الأمر git checkout -b ، باستخدام الاسم البعيد واسم الفرع

ذات صلة: كيفية تبديل أجهزة التحكم عن بعد وإضافتها وإزالتها

قبل الخروج

قبل الدفع ، ضع بعض الأشياء في الاعتبار ، وستكون بخير.

تأكد من تجنب تضارب الأسماء. إذا كان لديك فرع محلي يحمل نفس اسم الفرع البعيد ، فحدد ما إذا كنت ستعيد تسمية الفرع المحلي أو تنشئ فرعًا باسم مختلف لتتبع الفرع البعيد.

إذا كنت تستخدم مستودعات بعيدة متعددة ، فتأكد من استخدام جهاز التحكم عن بُعد الصحيح.

ذات صلة: Git rebase: كل ما تحتاج إلى معرفته