هل سبق لك أن فقدت كوداً كنت تعمل عليه لساعات بسبب خطأ بسيط؟ أو احتجت للتعاون مع زميل في مشروع برمجي لكن وجدت نفسك تبعث ملفات zip ذهاباً وإياباً؟ إذا كانت إجابتك نعم، فأنت بحاجة ماسة إلى تعلم Git و GitHub.

في عام 2026، أصبحت معرفة Git و GitHub ليست ميزة إضافية بل شرط أساسي لأي مبرمج يريد العمل بشكل احترافي. في هذا الدليل الشامل، سنأخذك من الصفر حتى الاحتراف في إدارة الإصدارات والتعاون على المشاريع. سواء كنت مبتدئاً تماماً أو لديك خبرة سطحية، هذا الدليل سيثبت معرفتك ويأخذك للمستوى التالي.

💡 الحقيقة: 94% من الشركات التقنية تتطلب معرفة Git عند توظيف المبرمجين. تعلمها الآن يعني فتح أبواب لا حصر لها للفرص المهنية. Git ليست مجرد أداة — هي مهارة أساسية في سوق العمل الحديث.

🤔 ما هو Git؟ وما الفرق بين Git و GitHub؟

قبل أن نبدأ، لنُوضح الفرق الأساسي الذي يخلطه الكثير من المبتدئين. هذا الفهم هو حجر الزاوية لكل ما سنشرحه لاحقاً:

Git GitHub
نظام تحكم بالإصدارات (Version Control System) منصة استضافة للمشاريع التي تستخدم Git
يعمل محلياً على جهازك يعمل على الإنترنت (سحابي)
مجاني ومفتوح المصدر خدمة مجانية مع خطط مدفوعة
يُستخدم لـ تتبع التغييرات في الكود يُستخدم لـ التعاون ومشاركة الكود
لا يحتاج اتصال إنترنت يحتاج اتصال إنترنت

ببساطة: Git هو الأداة، و GitHub هو المكان الذي تستخدم فيه الأداة. تخيل Git كالكاميرا التي تلتقط صوراً (تسجل تغييرات الكود)، و GitHub كألبوم الصور على الإنترنت (المكان الذي تخزن فيه وتشارك هذه الصور).

📥 التثبيت والإعداد

1

تثبيت Git

أول خطوة هي تثبيت Git على جهازك. الطريقة تختلف حسب نظام التشغيل الذي تستخدمه:

Windows:

# 1. حمّل المثبت من الموقع الرسمي:
https://git-scm.com/download/win

# 2. افتح Command Prompt وتحقق من التثبيت:
git --version
git version 2.43.0

macOS:

# باستخدام Homebrew:
brew install git

# أو حمّل المثبت من الموقع الرسمي

Linux (Ubuntu/Debian):

sudo apt update
sudo apt install git
2

إعداد الهوية

بعد التثبيت، أخبر Git من أنت. هذه المعلومات ستظهر في كل commit تقوم به:

git config --global user.name "اسمك الكامل"
git config --global user.email "بريدك@example.com"

# تحقق من الإعدادات:
git config --list

استخدم نفس البريد الإلكتروني المسجل في GitHub لربط commits بحسابك بشكل صحيح.

🚀 أوامر Git الأساسية

هذه هي الأوامر التي ستستخدمها يومياً في عملك كمبرمج. احفظها جيداً ومارسها حتى تصبح جزءاً من ذاكرتك العضلية:

📁 git init — إنشاء مستودع جديد

يُستخدم لبدء تتبع Git في مجلد جديد. هذا الأمر يُنشئ مجلداً مخفياً (.git) يحتفظ بتاريخ المشروع:

mkdir my-project
cd my-project
git init
Initialized empty Git repository in /my-project/.git/

👁️ git status — معرفة حالة الملفات

يُظهر لك أي ملفات تم تعديلها وأيها جاهز للحفظ. استخدمه باستمرار لفهم حالة مشروعك:

git status

On branch main
Changes not staged for commit:
modified: index.html
modified: style.css

➕ git add — إضافة ملفات للمرحلة

يُخبر Git بأي ملفات تريد حفظ تغييراتها. يمكنك إضافة ملف واحد أو جميع الملفات:

# إضافة ملف محدد:
git add index.html

# إضافة جميع الملفات المُعدّلة:
git add .

# إضافة جميع ملفات نوع معين:
git add *.js

💾 git commit — حفظ التغييرات

يُحفظ التغييرات في تاريخ المشروع مع رسالة توضيحية. الـ commit هو "لقطة" من مشروعك في لحظة معينة:

git commit -m "إضافة صفحة المنتجات الجديدة"

# أو إضافة وحفظ في خطوة واحدة:
git commit -am "تعديل تصميم الهيدر"

💡 نصيحة ذهبية: اكتب رسائل واضحة وموجزة تصف ما فعلته. رسالة جيدة تساعدك (وفريقك) في فهم التاريخ لاحقاً. مثال سيء: "تعديلات" — مثال جيد: "إصلاح خطأ تسجيل الدخول في صفحة الاتصال".

📜 git log — عرض تاريخ التغييرات

يُظهر لك جميع الـ commits السابقة مع تاريخها وكاتبها:

git log

# عرض مختصر:
git log --oneline

# عرض رسومي:
git log --graph --oneline --all

🌿 الفروع (Branches): العمل بذكاء

الفروع هي أحد أقوى ميزات Git. تخيل أنك تعمل على ميزة جديدة لكنك لا تريد كسر الكود الحالي. الحل: أنشئ فرعاً جديداً! الفروع تسمح لك بالعمل على ميزات متعددة في نفس الوقت دون التأثير على الكود الرئيسي.

# إنشاء فرع جديد:
git branch feature-login

# الانتقال للفرع الجديد:
git checkout feature-login

# أو في خطوة واحدة:
git checkout -b feature-login

# عرض جميع الفروع:
git branch

# العودة للفرع الرئيسي:
git checkout main

🌟 الاستراتيجية المثالية (Git Flow): الفرع الرئيسي (main) يبقى مستقراً دائماً. كل ميزة جديدة أو إصلاح يعمل على فرع منفصل، ثم يُدمج بعد المراجعة والاختبار. هذا يضمن أن الكود الرئيسي لا ينكسر أبداً.

🔀 الدمج (Merge): دمج الفروع

بعد الانتهاء من العمل على فرع، حان وقت دمج التغييرات في الفرع الرئيسي. هذه العملية تُدمج تاريخ الفرع الجديد مع الفرع الرئيسي:

# 1. انتقل للفرع الرئيسي:
git checkout main

# 2. دمج الفرع الجديد:
git merge feature-login

# 3. حذف الفرع بعد الدمج:
git branch -d feature-login

🚨 حل التعارضات (Merge Conflicts)

أحياناً يتعارض تغييران على نفس السطر من الكود. Git لا يختار نيابة عنك — يعرض لك التعارض ويطلب منك حله يدوياً:

<<<<<<< HEAD
console.log("الكود القديم");
=======
console.log("الكود الجديد");
>>>>>>> feature-login

قُم بتحرير الملف يدوياً، احتفظ بالجزء الصحيح، ثم أكمل الـ commit:

git add .
git commit -m "حل تعارض الدمج في ملف index.js"

💡 نصيحة: لتجنب التعارضات، اسحب (pull) آخر التغييرات من الفرع الرئيسي قبل بدء عملك، وادمج (merge) الفرع الرئيسي بشكل متكرر إلى فرعك.

☁️ GitHub: مشاركة الكود مع العالم

الآن بعد أن عرفت Git، حان وقت رفع مشاريعك على GitHub. GitHub هو أكبر منصة لاستضافة المشاريع البرمجية في العالم، ووجودك عليه ضروري لأي مبرمح يريد العمل بشكل احترافي.

1

إنشاء حساب و مستودع

سجّل في github.com وأنشئ مستودعاً جديداً (New Repository). اختر اسماً واضحاً يعبر عن المشروع، واجعله عاماً (Public) إذا كان مشروعاً تعليمياً. أضف README و .gitignore من البداية.

2

ربط المستودع المحلي بـ GitHub

# إضافة رابط GitHub:
git remote add origin https://github.com/اسمك/المشروع.git

# التحقق:
git remote -v
3

رفع الكود (Push)

# رفع الفرع الرئيسي:
git push -u origin main

# في المرات القادمة:
git push
4

تحميل الكود (Pull)

# تحديث مشروعك المحلي:
git pull origin main

# أو باختصار:
git pull

🤝 التعاون على GitHub

Fork & Pull Request

للمشاركة في مشاريع مفتوحة المصدر (Open Source)، اتبع هذه الخطوات:

  1. Fork: انسخ المشروع إلى حسابك على GitHub بالنقر على زر "Fork"
  2. Clone: حمّل نسختك المحلياً: git clone https://github.com/اسمك/المشروع.git
  3. Branch: أنشئ فرعاً جديداً للميزة: git checkout -b feature-name
  4. Commit: اكتب الكود وادفع commits
  5. Push: ارفع الفرع: git push origin feature-name
  6. Pull Request: افتح Pull Request من GitHub لطلب دمج تغييراتك

🎯 لماذا المشاركة في Open Source؟ المشاركة في مشاريع مفتوحة المصدر تُظهر مهاراتك للعالم، تبني سمعتك في المجتمع التقني، وتفتح أبواباً للتوظيف. العديد من الشركات الكبرى توظف مباشرة من مساهمي مشاريعها!

🎯 الخلاصة

Git و GitHub ليسا مجرد أدوات — هما مهارات أساسية لأي مبرمج في 2026. من خلال إتقان هذه الأدوات، ستتمكن من:

  • حفظ تاريخ كامل لمشروعك والعودة لأي نقطة سابقة
  • التعاون مع فريق بكفاءة دون فقدان أي عمل
  • عرض مشاريعك للعالم وبناء Portfolio احترافي
  • المشاركة في مشاريع مفتوحة المصدر وبناء سمعتك
  • تلبية متطلبات 94% من الشركات التقنية

ابدأ اليوم بإنشاء مستودع على GitHub وارفع أول مشروع لك. كل commit تقوم به هو خطوة نحو الاحتراف. تذكر: كل مبرمج محترف بدأ بـ git init!

🚀 ابدأ رحلتك مع Git

انضم إلى أكاديمية البرمجة وتعلم Git و GitHub ضمن مسار Full Stack المتكامل.

ابدأ التعلم المجاني →
Git GitHub Version Control Open Source تعلم البرمجة 2026 دليل شامل

🚀 مستعد للبدء؟

انضم لآلاف المبرمجين العرب الذين يتعلمون Git و GitHub مع أكاديمية البرمجة.

🏠 العودة للرئيسية 💬 استفسار