
Git & GitHub in 45 mins 🟠| كورس أساسيات جيت وجيتهاب في 45 دقيقة للمبتدئين
Yehia Tech يحيى تك
Overview
يقدم هذا الفيديو شرحًا شاملاً لنظام التحكم في الإصدارات Git ومنصة GitHub، موجهًا للمبتدئين. يبدأ بتوضيح أهمية Git في إدارة التغييرات على الكود في المشاريع الجماعية، ثم ينتقل إلى كيفية تثبيت Git وإعداده على جهاز المستخدم. يستعرض الفيديو كيفية استخدام Git محليًا لإنشاء مستودعات، وتتبع التغييرات، وحفظها كـ "كوميتات" (إصدارات). كما يشرح مفهوم "البرانشات" (الفروع) وكيفية استخدامها لتطوير ميزات جديدة بشكل منفصل، ودمجها لاحقًا. أخيرًا، يوضح الفيديو كيفية ربط المستودع المحلي بمنصة GitHub السحابية لرفع الكود، والتعاون مع المطورين الآخرين، واستعادة البيانات في حال فقدانها محليًا.
Save this permanently with flashcards, quizzes, and AI chat
Chapters
- Git هو نظام للتحكم في الإصدارات (Version Control System) يساعد في تتبع وإدارة التغييرات على الملفات.
- يسمح Git لعدة مطورين بالعمل على نفس المشروع في وقت واحد دون تداخل الكود.
- كل تغيير يتم حفظه في Git يُعتبر "كوميت" (Commit)، وهو بمثابة إصدار أو نسخة من الكود.
- يمكن استخدام Git لتتبع أي نوع من الملفات، وليس فقط ملفات الكود البرمجي.
- يتم تنزيل Git من موقعه الرسمي وتثبيته باتباع خطوات المثبت.
- يُنصح بتفعيل خيارات مثل "Open Git Bash Here" لتسهيل الوصول إلى أوامر Git.
- بعد التثبيت، يجب تكوين اسم المستخدم (username) والبريد الإلكتروني (email) الخاص بالمطور.
- يمكن تطبيق هذه الإعدادات على مستوى المستودع المحلي (local repository) أو على مستوى النظام بالكامل (global).
- للبدء، يتم تهيئة مستودع Git جديد في مجلد المشروع باستخدام الأمر `git init`.
- يقوم Git بإنشاء مجلد مخفي باسم `.git` لتخزين معلومات المستودع.
- يتم تتبع التغييرات في الملفات باستخدام `git add` لوضعها في منطقة التحضير (staging area).
- يتم حفظ التغييرات المُجهزة في سجل المستودع كـ "كوميت" باستخدام `git commit` مع رسالة وصفية.
- يمكن عرض سجل التغييرات (الكوميتات) باستخدام الأمر `git log`.
- كل كوميت لها معرف فريد (commit hash) يمكن استخدامه للرجوع إلى إصدار سابق.
- الأمر `git checkout <commit_hash>` يسمح بالتبديل بين الإصدارات المختلفة للملفات.
- العودة إلى أحدث إصدار مستقر تكون عادةً بالتبديل إلى الفرع الرئيسي (مثل `master` أو `main`).
- الفروع (Branches) تسمح بتطوير ميزات جديدة أو تجربة تغييرات دون التأثير على الفرع الرئيسي (مثل `master`).
- يتم إنشاء فرع جديد باستخدام `git checkout -b <branch_name>`.
- يمكن العمل وحفظ الكوميتات على الفرع الجديد بشكل مستقل.
- بعد الانتهاء من العمل على الفرع، يمكن دمج تغييراته مع الفرع الرئيسي باستخدام `git merge`.
- GitHub هو منصة سحابية شهيرة توفر استضافة للمستودعات البعيدة (remote repositories).
- يتم ربط المستودع المحلي بمستودع على GitHub باستخدام `git remote add origin <url>`.
- يمكن رفع الكوميتات المحلية إلى المستودع البعيد باستخدام `git push`.
- يمكن سحب التغييرات من المستودع البعيد إلى المستودع المحلي باستخدام `git pull`.
- يمكن للمطورين الآخرين استنساخ (clone) المستودع من GitHub للعمل عليه محليًا.
- يسمح GitHub بمشاركة الكود مع الآخرين، سواء كان المستودع عامًا (public) أو خاصًا (private).
- في حال فقدان البيانات المحلية، يمكن استعادة المشروع بالكامل من GitHub باستخدام `git clone`.
- يمكن استخدام ميزات مثل "fork" لإنشاء نسخة خاصة من مستودع شخص آخر لتجربتها أو المساهمة فيها.
Key takeaways
- Git هو نظام أساسي لإدارة التغييرات في الكود، مما يجعله لا غنى عنه في تطوير البرمجيات الجماعي.
- الكوميتات هي نقاط استعادة في تاريخ المشروع، تسمح بالعودة إلى أي إصدار سابق بسهولة.
- الفروع (Branches) توفر بيئة آمنة لتطوير الميزات الجديدة دون التأثير على استقرار الكود الرئيسي.
- GitHub يوفر منصة سحابية لربط المستودعات المحلية، مما يضمن النسخ الاحتياطي ويسهل التعاون بين المطورين.
- استخدام `git add` و `git commit` هو العملية الأساسية لحفظ التغييرات في المستودع المحلي.
- التبديل بين الفروع والدمج (`git merge`) هما مفتاح إدارة مسارات التطوير المتوازية.
- استعادة المشروع من GitHub بعد فقدانه محليًا هي ميزة حيوية تضمن عدم ضياع العمل.
Key terms
Test your understanding
- ما هو الغرض الرئيسي من استخدام نظام التحكم في الإصدارات مثل Git في المشاريع البرمجية؟
- كيف يمكنك حفظ مجموعة من التغييرات التي أجريتها على ملفات مشروعك كإصدار مستقل باستخدام Git؟
- لماذا يُعد استخدام الفروع (Branches) مفيدًا عند تطوير ميزات جديدة في مشروع برمجي؟
- ما هي الخطوات الأساسية لربط مستودع Git محلي بمستودع على منصة GitHub؟
- كيف يمكنك استعادة مشروعك بالكامل على جهازك إذا فقدت جميع ملفاته المحلية؟