مقدمة: Git من الصفر إلى مُطوّر محترف
- إنشاء مستودع Git وإدارته بفعالية
- إجراء عمليات الالتزام والتحكم في النسخ
- إدارة الفروع والدمج بينها بثقة
- حل النزاعات بين الفروع بطريقة احترافية
- تطبيق أفضل الممارسات في إدارة النسخ
- تعزيز الكفاءة في التعاون مع فريق التطوير
مرحبًا بك. هذه الدورة تهدف إلى تحويلك من مجرد سمع «Git» إلى مطور متمرس في فريق حقيقي. Git اليوم ليس خيارًا، بل هو متطلب أساسي في كل وظيفة للمطور. يتم فحص مهاراته في المقابلات التقنية، ويُقَيِّم أسلوب عملك المهني حتى قبل أول محادثة مع صاحب العمل. سنقوم معًا بالمشي من أول git init حتى pull request كامل في مستودع حقيقي. لنبدأ.
هل سبق لك أن سميت ملفًا بـ 'مشروع_النسخة_الأخيرة_النسخة_الثانية؟' أو خفت من حذف سطر برمجي لأنك ظنّنت أنه 'قد يكون مفيدًا لاحقًا'؟ بدون نظام التحكم في الإصدارات، تعمل في دائم القلق من فقدان نسخة مهمة أو نسيان السبب وراء تغيير غرزات الثلاثة الأشهر الماضية. مع Git، تسجّل كل خطوة، وتعود إلى أي لحظة من الماضي، وتتعاون ضمن فريق بدون فوضى. هذا ليس راحة فقط — هذا معيار مهنية.
إذا كنت تكتب شيفرة برمجية بالفعل — لا يهم ما إذا كانت بلغة ما — لكن عندما تسمع كلمة نزاع الدمج تشعر برهبة خفيفة. إذا قمت بـ git commit من قبل لكنك لا تزال لا تعرف ما يجري وراء الكواليس. إذا كنت تتوقع الحصول على أول عمل لك وتفهم أن ملفك الشخصي على GitHub الفارغ هو علامة حمراء لأصحاب العمل. هذا الكورس يبدأ من الصفر، لكنه لن يتوقف هناك — فهو سيوجهك إلى حيث تنتظر فرق العمل الحقيقية.
سوف تصبح قادرًا على استخدام Git بثقة ضمن فريق: إنشاء commit ذات معنى، وحل النزاعات دون رهبة، وإنشاء Pull Request كما يفعل ذلك المطورون المحترفون. سيتيح لك الكورس فهم مفاهيم سير عمل Git المشهورة وتوضيحها أمام أصحاب العمل خلال المقابلات التقنية بصدق ووضوح. وأهم شيء — في نهاية الكورس، سيكون لديك مستودع حقيقي مرتبط بدورة تطوير كاملة: من init حتى إصدار نهائي. لم يعد هذا مجرد مشروع تعليمي، بل هو أعمالك التي تُظهر كفاءتك.
في الأقسام الثلاثة الأولى، سنبني الأساس الصلب. سنبدأ بإجابة صريحة على سؤال 'لماذا؟' — وسأريك التطوير بدون Git كما يراه المطورون. ثم سنضبط Git بشكل صحيح: ليس مجرد إجراءات رتيبة، لأن اسمك سيظل مرتبطًا بهذا الالتزام إلى الأبد. أخيرًا، سنتحدث عن منطقة التجميع المؤقت — مفهوم يفهمه الكثيرون خطأ عقود، لكنه يحول تاريخ مشروعك إلى مستند مُنظّم بدلاً من مجرد مجموعة من التغييرات.
سيُظهر لك الفصل الرابع كيفية قراءة تاريخ المشروع كمحترف — ولماذا 'التاريخ الفوضوي' يكشف فورًا أنك مبتدئ. في الفصل الخامس، سنُ demystify الفروع: ستفهم أن الفرع مجرد مؤشر بسيط، ولن تعود على خائفة من استخدامها. أما الفصل السادس، فهو أكثر المواضيع طلبًا في مقابلات التوظيف: كيفية الإلغاء عن الأخطاء. سأريك سيناريو محدد حيث يدمر reset --hard العمل الجماعي، وأشرح متى يكون revert هو الخيار الوحيد الصحيح.
سيُنقلك الفصل السابع من العمل المحلي إلى العمل الجماعي: سنضبط GitHub، ونوضح الفروق بين push و pull و fetch — الأمر ثلاثة تُخلط بينها المبتدئون كثيرًا. في الفصل الثامن، سنمر بالدورة الكاملة: fork و branch ميزة و pull request ومراجعة الكود وmerge — هكذا تعمل أغلب الفرق الحقيقية في الشركات الكبرى مثل أرامكو وسابك. أما في التاسع، فسنتعامل مع التعارضات: لن نتجنبها، بل نتعلم حلها بوضوح وسرعة، مع فهم كل علامة في الملف.
في الفصل العاشر، ستحصل على إجابة صادقة ومفصلة على سؤال 'ما سير عمل Git الذي استخدمته' — سنناقش Feature Branch و Git Flow و Trunk-Based Development مع إيجابيات وسلبيات كل منها في بيئات العمل الفعلية. في الفصل الحادي عشر، سنضيف rebase و stash و cherry-pick — أدوات تميز بين مطور واثق ومن يعرف الأساسيات فقط. والمشروع النهائي: دورة مطور جماعية كاملة من أول التزام إلى علامة الإصدار — ومستودع حقيقي في ملف أعمالك الاحترافي.
بعض النصائح التي تجعل التعلم أكثر فعالية. الأول: افتح الطرفية أثناء المشاهدة — Git يُتعلم باليدين، وليس بالعينين. الثاني: اعمل وقفة واكتب كل أمر بنفسك، لا تقم بنسخه. الثالث: إذا كسرت شيئًا — رائع، هذا هو المطلوب بالضبط؛ الخطأ في بيئة تعلم آمنة هو أفضل معلم. الرابع: بعد كل قسم، عُد إلى مستودعك التعليمي وطبق ما تعلمته هناك. الممارسة الفورية هي التي تُعد التعلم الحقيقي.