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

إنشاء commit وpull request مع Bob

استخدم Bob لإنشاء branch، ترتيب التغييرات، توليد رسالة commit، رفع التغييرات إلى مستودعك، وفتح pull request.

يتضمن Bob دعماً مدمجاً للتحكم في إصدارات Git ويتيح لك إدارة تغييرات الكود دون مغادرة بيئة التطوير.

في هذا الدرس، ستستخدم Bob لإنشاء branch، ترتيب تغييرات الكود، توليد رسالة commit وصفية، رفع التغييرات إلى مستودعك، وفتح pull request يمكنك مراجعته ودمجه.

المتطلبات الأساسية

إعداد المشروع

جهّز نسخة عمل من المستودع.

عمل fork للمستودع

ستعمل من fork لمستودع Galaxium Travels.

  1. اذهب إلى مستودع Galaxium Travels على GitHub.
  2. انقر على زر Fork في الزاوية العلوية اليمنى من الصفحة.
  3. اختر حساب GitHub الخاص بك كمالك للـ fork.

لمعرفة المزيد عن عمل fork لمستودع، راجع توثيق GitHub حول forking a repository.

استنساخ المستودع

  1. في terminal، استنسخ مستودع Galaxium Travels الذي عملت له fork. استبدل <your-id> باسم مستخدم GitHub الخاص بك في الأمر التالي:

    git clone git@github.com:<YOUR_ID>/galaxium-travels.git

إذا حصلت على خطأ مصادقة، تأكد من إضافة مفتاح SSH الخاص بك إلى ssh-agent. راجع توثيق GitHub لمزيد من المعلومات.

  1. في Bob، انقر على File ثم Open Folder.

  2. انتقل إلى مجلد galaxium-travels الذي استنسخته للتو وافتحه.

التبديل إلى وضع Agent

إذا لم تكن واجهة دردشة Bob مفتوحة بالفعل، افتحها بالنقر على أيقونة Bob بجانب شريط التنقل أو استخدم الاختصار Option + Command + B (Mac) أو Ctrl + Alt + B (Windows).

لوحة دردشة Bob مفتوحة في IBM Bob IDE

استخدم وضع Agent حتى يتمكن Bob من كتابة وتعديل الكود، تنفيذ أوامر Git، وإرشادك عبر سير العمل. لا يزال Bob يطلب الإذن قبل كل عملية إلا إذا سُمح له صراحةً.

انقر على القائمة المنسدلة لمحدد الوضع في دردشة الوكيل واختر Agent، أو اكتب /agent في الدردشة.

إنشاء branch

قبل إجراء التغييرات، أنشئ branch للميزة حتى يبقى عملك منفصلاً عن main.

نفّذ الطلب التالي:

Create and switch to a new branch named update-header.

يطلب Bob الإذن لتنفيذ git checkout -b update-header.

انقر على Approve for task لإنشاء الـ branch والتبديل إليه.

إجراء تغيير في الكود

أجرِ تغييراً صغيراً لإعطاء Bob شيئاً ليقوم بـ commit له.

فتح مكوّن Header

في قاعدة كود Galaxium Travels، افتح booking_system_frontend/src/components/layout/Header.tsx.

تعديل نص الـ header

اطلب من Bob تغيير Galaxium Travels إلى Galaxium Travel Agency. بادئة @ تضيف ملفاً إلى سياق Bob حتى يعرف بالضبط أي ملف يجب تعديله.

Change the name of the Header from `Galaxium Travels` to `Galaxium Travel Agency` 
in @booking_system_frontend/src/components/layout/Header.tsx

بدلاً من ذلك، يمكنك تعديل الملف يدوياً وتغيير Galaxium Travels إلى Galaxium Travel Agency.

<span className="text-2xl font-bold bg-cosmic-gradient bg-clip-text text-transparent">
    Galaxium Travel Agency
</span>

تنفيذ سير عمل Git

استخدم Bob لترتيب التغييرات، وعمل commit، ورفعها، ثم فتح pull request.

ترتيب تغييراتك

نفّذ الطلب التالي لترتيب تغييراتك:

Stage all the changes I made for the header component update.

يفحص Bob شجرة العمل، يحدد الملفات المعدّلة، ويطلب الإذن لتنفيذ git add.

انقر على Approve for task للسماح لـ Bob بتنفيذ الأمر.

عمل commit للتغييرات

نفّذ الطلب التالي لعمل commit للتغييرات المرتبة:

Commit the staged changes with a descriptive commit message that summarizes what was added.

يراجع Bob الـ diff المرتب ويولد رسالة commit تصف غرض التغييرات ونطاقها.

يعرض Bob مطالبة إذن في بيئة التطوير لتنفيذ الأوامر.

انقر على I understand the risks، ثم انقر على Approve حتى يتمكن Bob من تنفيذ git commit.

رفع التغييرات

نفّذ الطلب التالي لرفع commit الخاص بك إلى المستودع البعيد:

Push my changes to the remote repository.

يحدد Bob الـ branch الحالي والـ remote، ثم يطلب الإذن لتنفيذ git push.

انقر على Approve for task لرفع الـ commit. يؤكد Bob نجاح الرفع في تاريخ الدردشة.

فتح pull request

نفّذ الطلب التالي لإنشاء pull request:

Create a pull request to merge my changes into the main branch. Write a clear title and description based on what was changed.

يتطلب Bob مصادقة GitHub في المرة الأولى التي تنشئ فيها pull request. يفتح Bob نافذة متصفح لتصريح الوصول. بعد التصريح، يفتح Bob الـ pull request. انقر على الرابط المقدم للوصول إلى pull request في متصفحك. بعد مراجعة العنوان والوصف، انقر على Create pull request.

يعيد Bob رابط pull request حتى تتمكن من مراجعته أو مشاركته أو دمجه مباشرةً من متصفحك.

لجعل Bob ينشئ pull requests دون نافذة تأكيد، ثبّت GitHub CLI واطلب من Bob استخدامه لإنشاء pull requests.

استكشاف الأخطاء وإصلاحها

  • رُفض الرفع أو فشلت المصادقة: تأكد من إعداد Git ببيانات اعتماد يمكنها الرفع إلى fork الخاص بك.
  • الـ branch update-header موجود بالفعل: اطلب من Bob التبديل إلى الـ branch الموجود أو اختر اسم branch آخر.
  • الـ pull request يستهدف IBM/galaxium-travels: غيّر المستودع الأساسي إلى fork الخاص بك قبل إنشاء pull request.

التنظيف

بعد إكمال هذا الدرس، يمكنك إزالة الموارد التي أنشأتها:

  • أعد نسختك المحلية إلى الـ branch main.
  • أغلق أو ادمج الـ pull request على GitHub.
  • احذف الـ branch update-header من fork الخاص بك.
  • احذف fork Galaxium Travels إذا لم تعد تحتاجه.

الخطوات التالية

في هذا الدرس، تعلمت كيفية استخدام تكامل Git المدمج في Bob لإدارة تغييرات الكود دون مغادرة بيئة التطوير.

انتقل إلى تقييس سلوك Bob لتعلم كيفية تعريف قواعد دائمة تتحكم في سلوك Bob عبر كل محادثة ووضع.

ما رأيك في هذا الموضوع؟