Git: التثبيت والتكوين

5 دقيقة

جدول المحتويات


1 — لماذا Git؟

Git نظام تحكم في الإصدارات موزَّع (VCS). يسجّل سجل شفرتك: كل تعديل، من قام به، متى، ولماذا.

بلا Git نرتجل بمجلدات projet_final و projet_final_v2 و projet_final_vraiment_final… يستبدل Git هذا الفوضى بسجل نظيف قابل للتنقل.

ما يسمح به Git:

  • الرجوع إلى الخلف إلى أي إصدار سابق.
  • العمل مع عدة أشخاص دون أن يمحو بعضكم بعضاً (فروع، دمج).
  • تتبّع كل تغيير (من، ماذا، متى، لماذا).
  • أن يكون قاعدة لكل DevOps: CI/CD، النشر، التعاون.

Git موزَّع: كل شخص يملك نسخة كاملة من المستودع، بما فيها السجل. لا حاجة للاتصال بخادم للعمل.

↑ العودة إلى الأعلى


2 — تثبيت Git

يعتمد التثبيت على نظام التشغيل.

Windows

نزّل Git for Windows من git-scm.com. يوفّر المثبّت أيضاً Git Bash، طرفية عملية.

macOS

bash
# مع Homebrew
brew install git

Linux (Debian / Ubuntu)

bash
sudo apt update
sudo apt install git

Linux (Red Hat / Fedora)

bash
sudo dnf install git

نصيحة: اقبل الخيارات الافتراضية لمثبّت Windows، إلا إذا كنت تعرف ما تغيّره. تناسب الغالبية العظمى من الحالات.

تمرين مصغّر — اكتب أمر تثبيت Git على توزيعة Linux Debian/Ubuntu.

عرض الحل
bash
sudo apt update
sudo apt install git

↑ العودة إلى الأعلى


3 — الإعداد الأولي

قبل أول إيداع، يحتاج Git إلى معرفة من أنت. ستظهر هذه المعلومات في سجل كل إيداع.

bash
# اسمك (ظاهر في سجل الإيداعات)
git config --global user.name "الاسم الأول اسم العائلة"

# بريدك (يفضَّل أن يكون نفسه على GitHub)
git config --global user.email "vous@exemple.com"
الخيارالنطاقالملف المعني
--globalكل مستودعاتك (مستخدمك)~/.gitconfig
--local (افتراضي)المستودع الحالي فقط.git/config
--systemكل مستخدمي الجهازإعداد النظام

بعض الإعدادات الموصى بها

bash
# تعيين الفرع الافتراضي إلى "main"
git config --global init.defaultBranch main

# إدارة نهايات الأسطر (مهم على Windows)
git config --global core.autocrlf true

الإعداد --global يُجرى مرة واحدة لكل جهاز. بعد ذلك ترثه كل مستودعاتك تلقائياً.

تمرين مصغّر — اكتب الأمرين اللذين يعدّان عالمياً اسمك وبريدك في Git.

عرض الحل
bash
git config --global user.name "الاسم الأول اسم العائلة"
git config --global user.email "vous@exemple.com"

↑ العودة إلى الأعلى


4 — التحقق من التثبيت
bash
# التحقق من الإصدار المثبَّت
git --version
# → git version 2.43.0  (أو مشابه)

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

# التحقق من إعداد محدَّد
git config user.name
git config user.email

إذا أرجع git --version «أمر غير موجود»، فـ Git غير مثبَّت، أو مجلده ليس في المتغير PATH. على Windows، فتح طرفية جديدة بعد التثبيت يحل المشكلة غالباً.

تمرين مصغّر — نفّذ الأمر الذي يعرض إصدار Git المثبَّت على جهازك.

عرض الحل
bash
git --version
# → git version 2.43.0 (أو مشابه)

↑ العودة إلى الأعلى


5 — المزيد — الأسماء المستعارة والمحرّر الافتراضي

تعيين المحرّر الافتراضي

يفتح Git أحياناً محرّراً (لكتابة رسالة إيداع مثلاً).

bash
# استخدام VS Code كمحرّر Git
git config --global core.editor "code --wait"

إنشاء أسماء مستعارة (اختصارات)

bash
git config --global alias.st status
git config --global alias.co checkout
git config --global alias.br branch
git config --global alias.lg "log --oneline --graph --all"

بعد ذلك، git st يعادل git status، و git lg يعرض رسماً واضحاً للسجل، إلخ.

الاسم المستعاريعادلالفائدة
git stgit statusأقصر
git cogit checkoutأقصر
git lggit log --oneline --graph --allسجل مقروء

الأسماء المستعارة راحة صغيرة توفّر وقتاً كل يوم. اختيارية، لكنها مقدَّرة.

تمرين مصغّر — أنشئ اسماً مستعاراً عالمياً st ينفّذ git status، ثم بيّن كيف يُستخدم.

عرض الحل
bash
git config --global alias.st status

بعد ذلك، git st يعادل git status.

↑ العودة إلى الأعلى


6 — اختبار — التثبيت والإعداد

السؤال 1: أي أمر يعرض إصدار Git المثبَّت؟

a) git version --check

b) git --version

c) git -v install

d) git status

عرض الحل

الإجابة: b)git --version يعرض الإصدار (مثال git version 2.43.0) ويؤكّد أن Git مثبَّت فعلاً.


السؤال 2: لماذا يُستخدم git config --global user.email "..."؟

a) للدخول إلى GitHub

b) لتسجيل البريد المرتبط بإيداعاتك، لكل مستودعاتك

c) لإرسال بريد تلقائي

d) لحذف مستودع

عرض الحل

الإجابة: b) — مع --global، سيُرفَق هذا البريد بإيداعاتك في كل مستودعات الجهاز.


السؤال 3: ماذا يفعل الخيار --global؟

a) يطبّق الإعداد على كل مستودعات مستخدمك

b) يطبّق الإعداد على المستودع الحالي فقط

c) يشارك الإعداد مع العالم كله

d) يحذف الإعداد

عرض الحل

الإجابة: a)--global يكتب في ~/.gitconfig ويُطبَّق على كل مستودعاتك. بلا خيار، الإعداد محلي للمستودع الحالي.


السؤال 4: ماذا يعني «Git موزَّع»؟

a) Git مدفوع

b) كل مستخدم يملك نسخة كاملة من المستودع، بما فيها السجل

c) Git لا يعمل إلا متصلاً

d) Git يمحو السجل عند كل إيداع

عرض الحل

الإجابة: b) — بخلاف أنظمة التحكم المركزية، لكل شخص نسخة كاملة ويمكنه العمل دون اتصال.

↑ العودة إلى الأعلى


7 — تطبيق عملي — إعداد Git

المطلوب

  1. ثبّت Git إن لم يكن مثبَّتاً بعد.
  2. أعد اسمك وبريدك عالمياً.
  3. عيّن main فرعاً افتراضياً.
  4. تحقق من كامل إعدادك.

التصحيح — سلسلة الأوامر المتوقعة

bash
# 1. التحقق من التثبيت
git --version

# 2. إعداد الهوية
git config --global user.name "الاسم الأول اسم العائلة"
git config --global user.email "vous@exemple.com"

# 3. الفرع الافتراضي
git config --global init.defaultBranch main

# 4. التحقق
git config --list

النتيجة المتوقعة لـ git config --list:

user.name=الاسم الأول اسم العائلة
user.email=vous@exemple.com
init.defaultbranch=main
core.autocrlf=true

إذا ظهر اسمك وبريدك، فـ Git جاهز. يمكنك الانتقال إلى إنشاء أول مستودع محلي (الدرس 06).

↑ العودة إلى الأعلى


8 — الخلاصة

النقاط التي يجب تذكّرها

  1. Git نظام تحكم في الإصدارات موزَّع: لكل شخص نسخة كاملة.
  2. التثبيت: git-scm.com (Windows)، brew/apt/dnf (macOS/Linux).
  3. الإعداد الأدنى: user.name و user.email بـ --global.
  4. التحقق: git --version و git config --list.
  5. راحة اختيارية: المحرّر الافتراضي والأسماء المستعارة.

ما يلي

الدرس 06 — المستودع المحلي والإيداعات: إنشاء أول مستودع وتسجيل أول تغييراتك.

↑ العودة إلى الأعلى


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

دورة من إعداد الدكتور هيثم رحومة — تطوير ونشر حلول البيانات