تخطي إلى المحتوى
ابدأ مشروعك
الرئيسية / المدونة / Git وGitHub للمبتدئين: دليل عملي من أول أمر حتى نشر مشروعك

Git وGitHub للمبتدئين: دليل عملي من أول أمر حتى نشر مشروعك

Git وGitHub للمبتدئين: دليل عملي من أول أمر حتى نشر مشروعك

بقلم محمد صقر · 2 نوفمبر 2026 · البرمجة وأساسيات التطوير · قراءة نحو 5 دقيقة

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

في هذا الدليل نمر على كل ما تحتاجه عمليًا: من التثبيت إلى أول Commit، ثم الفروع والـPull Request، وحل التعارضات، وأخطاء المبتدئين.

لماذا نحتاج Git أصلًا؟

بدون Git ينتهي الأمر بمجلدات مثل: final وfinal2 وfinal-نهائي-جديد. المشاكل واضحة: لا تعرف أي نسخة الأحدث، ولا ما الذي تغير، ولا كيف تعود لنسخة كانت تعمل. Git يحل ذلك بأن يحفظ «لقطات» (Commits) لمشروعك مع رسالة تشرح كل تغيير، بحيث ترى التاريخ وتقارن وتعود.

فوائد عملية أخرى:

  • أمان: كل تغيير محفوظ، ولا يضيع عمل بحذف خاطئ.
  • تجريب بلا خوف: افتح فرعًا جديدًا، جرّب، وإن فشلت الفكرة احذفه.
  • عمل جماعي: عدة أشخاص على المشروع نفسه بدمج منظم.
  • معرض أعمال: GitHub يعرض مشاريعك وتاريخ نشاطك لأصحاب العمل والعملاء.
  • نشر آلي: منصات الاستضافة الحديثة تنشر موقعك تلقائيًا عند كل تحديث.

Git وGitHub: ما الفرق؟

  • Git: برنامج على جهازك يتتبع التغييرات. يعمل بدون إنترنت.
  • GitHub: خدمة سحابية تخزن نسخة من مشروعك وتضيف أدوات التعاون (Issues وPull Requests وActions). وهناك بدائل مثل GitLab وBitbucket لكن الأفكار نفسها.

الإعداد الأول

ثبّت Git من الموقع الرسمي (توثيق Git) ثم اضبط هويتك مرة واحدة:

git config --global user.name "اسمك"
git config --global user.email "you@example.com"
git config --global init.defaultBranch main

أنشئ حسابًا على GitHub ويفضل تفعيل التحقق بخطوتين. للاتصال الآمن استخدم مفاتيح SSH أو أداة GitHub CLI بدل كتابة كلمة المرور في كل مرة (راجع توثيق GitHub).

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

افترض أن لديك مجلد مشروع جديد:

git init                      # إنشاء مستودع محلي
git status                    # ماذا تغير؟
git add .                     # تجهيز كل التغييرات للحفظ
git commit -m "إضافة الصفحة الرئيسية"   # حفظ لقطة
git log --oneline             # عرض التاريخ

المناطق الثلاث

افهم هذا المفهوم وستفهم Git:

  1. مجلد العمل (Working Directory): ملفاتك كما هي الآن.
  2. منطقة التجهيز (Staging Area): ما اخترت حفظه في اللقطة القادمة بـgit add.
  3. المستودع (Repository): اللقطات المحفوظة بـgit commit.

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

رسائل Commit جيدة

  • اكتب بصيغة واضحة تصف التغيير: «إصلاح حساب الضريبة في السلة».
  • تجنب «تعديلات» و«fix» و«asdf».
  • لقطة واحدة لفكرة واحدة.

ربط المشروع بـGitHub

أنشئ مستودعًا فارغًا على GitHub ثم:

git remote add origin https://github.com/USERNAME/my-project.git
git branch -M main
git push -u origin main

بعدها تكتفي بـgit push لرفع جديدك، وgit pull لجلب ما أضافه غيرك. وإن أردت نسخ مشروع موجود: git clone <الرابط>.

الفروع (Branches): سر الأمان

الفرع نسخة موازية من المشروع تعمل عليها دون المساس بالرئيسية.

git switch -c feature/contact-form   # إنشاء فرع جديد والانتقال إليه
# ... تعدّل وتحفظ Commits ...
git switch main
git merge feature/contact-form       # دمج الفرع في الرئيسي
git branch -d feature/contact-form   # حذفه بعد الدمج

قاعدة ذهبية: الفرع main يجب أن يبقى دائمًا في حالة تعمل. كل ميزة أو إصلاح في فرع مستقل.

Pull Request: التعاون والمراجعة

عند العمل في فريق (أو حتى وحدك للانضباط) ترفع فرعك إلى GitHub وتفتح Pull Request يطلب دمجه في main. يراجع زميلك التغييرات ويعلق عليها، وتعمل الاختبارات الآلية، ثم يُدمج. فوائده: اكتشاف أخطاء مبكرًا، وتوثيق لماذا تغير الكود، وتبادل المعرفة.

حل تعارضات الدمج

يحدث التعارض حين يعدل شخصان السطر نفسه. يضع Git علامات في الملف:

<<<<<<< HEAD
<h1>أهلًا</h1>
=======
<h1>مرحبًا</h1>
>>>>>>> feature/title

اختر النسخة الصحيحة (أو ادمجهما)، واحذف العلامات، ثم git add وgit commit. لا تخف: التعارض أمر طبيعي وليس خطأ.

ملف .gitignore: ما لا يجب رفعه

ضع فيه ما لا تريد تتبعه:

node_modules/
.env
*.log
dist/
.DS_Store

الأهم: لا ترفع أبدًا كلمات مرور ومفاتيح API (ملفات .env) إلى مستودع عام. إن حدث ذلك فاعتبر المفتاح مسرّبًا وغيّره فورًا؛ حذفه من آخر نسخة لا يكفي لأنه يبقى في التاريخ. وللمزيد عن الحماية راجع قائمة أمان المواقع.

أوامر إنقاذ مفيدة

الموقفالأمر
إلغاء تعديل لم يُجهّز في ملفgit restore file.txt
إلغاء التجهيزgit restore --staged file.txt
تعديل رسالة آخر Commitgit commit --amend
التراجع عن Commit بأمان بإنشاء آخر عكسيgit revert <hash>
حفظ عملك مؤقتًا دون Commitgit stash ثم git stash pop
رؤية من غيّر هذا السطرgit blame file.txt

تحذير: أوامر مثل git reset --hard وgit push --force قد تضيّع عملًا. لا تستخدمها قبل أن تفهمها، ولا تستخدم --force على فرع يشاركه غيرك.

أفضل الممارسات

  1. Commits صغيرة متكررة بدل لقطة ضخمة في آخر اليوم.
  2. اسحب قبل أن تدفع (git pull) لتقلل التعارضات.
  3. اسم فرع واضح: feature/ وfix/ وdocs/.
  4. ملف README يوضح المشروع وطريقة تشغيله، وهو أول ما يراه الزائر. وتأكد من أن كودك مقروء (ممارسات الكود النظيف).
  5. استخدم GitHub Pages أو Netlify لنشر مواقعك الثابتة مجانًا مباشرة من المستودع. وللخطوات الكاملة إنشاء موقع خطوة بخطوة.
  6. فعّل GitHub Actions لاختبار الكود ونشره تلقائيًا عند كل تحديث (GitHub Actions).

كيف تبني بروفايل GitHub يلفت الأنظار؟

  • صورة واسم واضحان ونبذة قصيرة.
  • تثبيت (Pin) أفضل 4 إلى 6 مشاريع.
  • لكل مشروع README بصور شاشة ورابط تجربة مباشر.
  • نشاط منتظم ولو بسيط.
  • مشاركات صغيرة في مشاريع مفتوحة المصدر (إصلاح خطأ إملائي في توثيق يبدأ الطريق).

وتذكر أن صاحب العمل أو العميل يريد أن يرى جودة الكود وتنظيمه ورسائل الـCommits، لا عدد النجوم. وهذه أعمال حقيقية تنفذ بنفس هذا الأسلوب يمكنك مشاهدتها في معرض الأعمال.

أخطاء شائعة للمبتدئين

  • عدم الحفظ إلا مرة واحدة في نهاية المشروع.
  • رفع node_modules أو ملفات ضخمة.
  • رفع الأسرار كمفاتيح API.
  • العمل مباشرة على main دون فروع.
  • الخوف من Git وتجنب الأوامر؛ جرّب في مشروع تجريبي أولًا.
  • استخدام واجهة رسومية فقط دون فهم الأوامر. الواجهات مفيدة لكن افهم الأساس.

أسئلة شائعة

الخلاصة السريعة
  • Git يتتبع التاريخ على جهازك، وGitHub يستضيفه ويعرض عملك ويتيح التعاون.
  • دورة العمل: add ثم commit ثم push، مع فرع لكل ميزة.
  • لا ترفع الأسرار، واستخدم .gitignore منذ اللحظة الأولى.
  • بروفايل GitHub منظم هو أقوى سيرة ذاتية لمبرمج مبتدئ.

أسئلة شائعة

هل Git صعب للمبتدئين؟

الأوامر الأساسية خمسة أو ستة فقط (init وadd وcommit وpush وpull وswitch). تتقنها في أسبوع بالتطبيق.

هل GitHub مجاني؟

نعم للمستودعات العامة والخاصة بخصائص أساسية، وهناك خطط مدفوعة لميزات الفرق الكبيرة.

ما الفرق بين merge وrebase؟

merge يدمج الفروع مع إبقاء التاريخ كما هو، وrebase يعيد ترتيب Commits لتاريخ خطي أنظف. ابدأ بـmerge.

ماذا أفعل إن رفعت كلمة مرور بالخطأ؟

غيّر كلمة المرور أو المفتاح فورًا، فحذفه من آخر نسخة لا يمحو التاريخ.

هل أستخدم Git لمشاريعي الصغيرة؟

نعم. هو عادة تلازمك مدى الحياة وتحميك حتى في أصغر مشروع.

خدمة مرتبطة: تصميم وبرمجة المواقع

تحتاج تنفيذ هذا الموضوع لمشروعك؟ احكيلي عن فكرتك واحصل على عرض سعر مجاني خلال 24 ساعة.

اعرف المزيد ←

اقرأ أيضاً

مصادر موثوقة للاستزادة

يلا نبني حاجة خرافية

احكيلي عن مشروعك واحصل على عرض سعر مجاني خلال 24 ساعة.

M
محمد صقرمتاح للتواصل
تواصل معي