Git Advanced: Monorepo, Submodules & Workflows · درس

تفرّع الميزات والإصلاحات العاجلة

طبّق استراتيجيات فعّالة لتفرّع الميزات وتعلّم كيفية تطبيق الإصلاحات العاجلة بسرعة على بيئات الإنتاج

الدرس 3 من 411 خطوة

تفرّع الميزات والإصلاحات العاجلة درس مجاني في Git Advanced: Monorepo, Submodules & Workflows على CoddyKit. هذا هو الدرس 3 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Git Advanced: Monorepo, Submodules & Workflows، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Git Advanced: Monorepo, Submodules & Workflows 4 دروس في المجموع.

بعض أجزاء هذا الدرس لم تُترجم بعد وتظهر باللغة الإنجليزية.

Why Feature Branches?

When working on new features or major changes, it's best to keep them separate from your main codebase. This is where feature branching comes in!

It allows developers to work on new functionality in isolation without affecting the stable version of the project. This prevents half-finished work from breaking the main branch.

Creating a Feature Branch

To start a new feature, you'll create a new branch from your main development line, often main or develop. This creates a separate timeline for your work.

Use the git checkout -b command to create a new branch and switch to it in one go.

git checkout -b my-new-feature

Working in Isolation

Once on your feature branch, you can make changes, add files, and commit as usual. Your commits will only exist on this branch, not on main.

It's good practice to push your feature branch to the remote repository regularly, especially if you're collaborating or want a backup.

git add . 
git commit -m "Implement initial feature UI" 
git push origin my-new-feature

Merging a Feature Branch

After your feature is complete, reviewed, and tested, it's time to integrate it back into the main development branch. You'll switch to the target branch (e.g., main) and then merge your feature branch.

Git will combine the changes. Often, a merge commit is created, showing exactly when the feature was integrated.

git checkout main 
git merge my-new-feature

Cleaning Up Feature Branches

Once a feature branch has been merged and is no longer needed, it's good practice to delete it. This keeps your list of branches tidy and easier to manage.

Remember to delete both the local and remote versions of the branch.

git branch -d my-new-feature 
git push origin --delete my-new-feature

Urgent Fixes: Hotfixes

Sometimes, critical bugs appear in the production environment that need immediate attention. These are called hotfixes.

A hotfix workflow allows you to quickly fix the issue and deploy it, minimizing downtime, without waiting for the next planned feature release.

Branching for a Hotfix

Unlike feature branches, hotfixes are typically branched directly from the production-ready branch (e.g., main or master). This ensures you're fixing the exact code currently in production.

You create a new branch specifically for the hotfix, often named with a prefix like hotfix/.

git checkout main 
git checkout -b hotfix/critical-bug-2023-01

Fix, Commit, Test

On your hotfix branch, you'll apply the necessary changes to resolve the bug. Keep the fix as small and focused as possible to reduce risk.

After making changes, commit them with a clear message and thoroughly test the fix to ensure it solves the problem without introducing new ones.

git add . 
git commit -m "HOTFIX: Fix login issue on production" 
// Run tests here

Deploying & Integrating Hotfixes

Once the hotfix is verified, it needs to be merged back into the production branch (e.g., main) and immediately deployed.

Crucially, the hotfix also needs to be merged into your long-running development branch (e.g., develop) to prevent the bug from reappearing in future releases.

git checkout main 
git merge hotfix/critical-bug-2023-01 
git push origin main 

git checkout develop 
git merge hotfix/critical-bug-2023-01 
git push origin develop

Feature vs. Hotfix Check

You've learned about feature branching and hotfixes. Let's test your understanding!

Summary: Branching for Success

In this lesson, you mastered two essential Git branching strategies:

  • Feature Branching: Ideal for developing new features in isolation, ensuring a stable main codebase. You learned to create, work on, merge, and delete feature branches.
  • Hotfixes: Crucial for quickly addressing critical bugs in production. You saw how to create hotfix branches from production, apply fixes, and merge them back to both production and development lines.

These techniques are vital for managing complex projects and maintaining a smooth development workflow with your team.

البدء مجانًا

تعلم Git Advanced: Monorepo, Submodules & Workflows مع معلم ذكاء اصطناعي — مجانًا

اكتب وقم بتشغيل أكوادك الفعلية في المتصفح، واحصل على مساعدة فورية من معلم ذكاء اصطناعي متاح 24/7، واستمر من حيث توقفت على الويب أو في التطبيق.

الدورات
12
الدروس
48

الأسئلة الشائعة

هل درس «تفرّع الميزات والإصلاحات العاجلة» مجاني؟

نعم — نص درس «تفرّع الميزات والإصلاحات العاجلة» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Git Advanced: Monorepo, Submodules & Workflows، انتقل إلى CoddyKit PRO. تتضمن دورة Git Advanced: Monorepo, Submodules & Workflows 4 دروس في المجموع.

ماذا ستتعلم في «تفرّع الميزات والإصلاحات العاجلة»؟

طبّق استراتيجيات فعّالة لتفرّع الميزات وتعلّم كيفية تطبيق الإصلاحات العاجلة بسرعة على بيئات الإنتاج تتمرن على Git Advanced: Monorepo, Submodules & Workflows مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Git Advanced: Monorepo, Submodules & Workflows؟

لا تُشترط خبرة سابقة. Git Advanced: Monorepo, Submodules & Workflows على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 4.

كم من الوقت يستغرق درس «تفرّع الميزات والإصلاحات العاجلة»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Git Advanced: Monorepo, Submodules & Workflows هذا؟

نعم. كل درس في Git Advanced: Monorepo, Submodules & Workflows يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. Git Flow مقابل GitHub Flow
  2. GitLab Flow وإدارة الإصدارات
  3. تفرّع الميزات والإصلاحات العاجلة
  4. التطوير القائم على الجذع والتكامل المستمر
← العودة إلى Git Advanced: Monorepo, Submodules & Workflows