We are still cooking the magic in the way!
Git و GitHub
تثبيت وتكوين Git
تثبيت وتكوين Git
الآن بعد أن فهمت ما هي Git ولماذا هي مهمة، حان الوقت لتثبيت Git على جهازك وتكوينها بشكل صحيح. في هذا الدرس، سنغطي التثبيت لجميع أنظمة التشغيل الرئيسية والإعدادات الأساسية للتكوين.
تثبيت Git
التثبيت على Windows
هناك عدة طرق لتثبيت Git على Windows:
الطريقة 1: Git for Windows (موصى به)
1. زيارة: https://git-scm.com/download/win
2. تنزيل أحدث إصدار (64-bit موصى به)
3. تشغيل المثبت
4. الإعدادات الموصى بها أثناء التثبيت:
• استخدام محرر النص الافتراضي (Vim أو VS Code)
• دع Git تقرر (اسم الفرع الافتراضي: main)
• Git من سطر الأوامر وبرامج الطرف الثالث
• استخدام OpenSSH المرفق
• استخدام مكتبة OpenSSL
• Checkout Windows-style، commit Unix-style
• استخدام محطة MinTTY
• Default (fast-forward or merge)
• Git Credential Manager
• تمكين التخزين المؤقت لنظام الملفات
5. انقر "Install" وانتظر حتى الانتهاء
الطريقة 2: GitHub Desktop (واجهة رسومية + Git)
1. زيارة: https://desktop.github.com
2. تنزيل وتثبيت GitHub Desktop
3. يتم تضمين Git تلقائياً
التثبيت على macOS
الطريقة 1: Homebrew (موصى به)
افتح Terminal وقم بتشغيل:
brew install git
الطريقة 2: أدوات سطر أوامر Xcode
افتح Terminal وقم بتشغيل:
xcode-select --install
هذا يثبت Git مع أدوات تطوير أخرى.
الطريقة 3: المثبت الرسمي
1. زيارة: https://git-scm.com/download/mac
2. تنزيل ملف .dmg
3. فتح واتباع تعليمات التثبيت
التثبيت على Linux
Debian/Ubuntu:
sudo apt update
sudo apt install git
Fedora:
sudo dnf install git
Arch Linux:
sudo pacman -S git
CentOS/RHEL:
sudo yum install git
نصيحة: على Linux، يمكنك أيضاً بناء Git من المصدر للحصول على أحدث إصدار مطلق، لكن إصدار مدير الحزم عادة كافٍ وأسهل في الصيانة.
التحقق من تثبيت Git
بعد التثبيت، تحقق من أن Git مثبتة بشكل صحيح:
# التحقق من إصدار Git
git --version
الإخراج المتوقع:
git version 2.43.0 (أو أعلى)
# التحقق من مساعدة Git
git --help
هذا يعرض أوامر وخيارات Git المتاحة.
مهم: إذا حصلت على خطأ "command not found" أو مشابه، قد تحتاج إلى إعادة تشغيل الطرفية أو موجه الأوامر، أو التحقق من متغير PATH في نظامك.
التكوين الأولي لـ Git
قبل أن تبدأ في استخدام Git، تحتاج إلى تكوين هويتك. تستخدم كل التزام Git هذه المعلومات، وهي مدمجة بشكل غير قابل للتغيير في الالتزامات التي تنشئها.
تعيين اسمك وبريدك الإلكتروني
# تعيين اسمك (مطلوب)
git config --global user.name "Your Name"
# تعيين بريدك الإلكتروني (مطلوب)
git config --global user.email "your.email@example.com"
مثال:
git config --global user.name "John Doe"
git config --global user.email "john.doe@gmail.com"
مهم: استخدم نفس عنوان البريد الإلكتروني الذي ستستخدمه لحسابات GitHub/GitLab لربط التزاماتك بشكل صحيح بملفك الشخصي.
فهم مستويات التكوين
لدى Git ثلاثة مستويات من التكوين، كل منها يتجاوز السابق:
1. مستوى النظام (--system)
الموقع: /etc/gitconfig (Linux/Mac) أو C:\ProgramData\Git\config (Windows)
ينطبق على: كل مستخدم على النظام وجميع المستودعات
الاستخدام: نادراً ما يستخدم، يتطلب امتيازات المسؤول
git config --system user.name "System Name"
2. المستوى العام (--global)
الموقع: ~/.gitconfig أو ~/.config/git/config
ينطبق على: المستخدم الحالي، جميع المستودعات
الاستخدام: الأكثر شيوعاً، إعداداتك الشخصية
git config --global user.name "Your Name"
3. المستوى المحلي (--local أو بدون علامة)
الموقع: .git/config (داخل المستودع)
ينطبق على: المستودع الحالي فقط
الاستخدام: إعدادات خاصة بالمشروع
git config --local user.name "Project Specific Name"
ترتيب الأولوية (من الأعلى إلى الأدنى):
محلي (--local) > عام (--global) > نظام (--system)
هذا يعني أن الإعدادات المحلية تتجاوز العامة، التي تتجاوز النظام.
إعدادات التكوين الأساسية
محرر النص الافتراضي
# تعيين VS Code كمحرر افتراضي
git config --global core.editor "code --wait"
# تعيين Sublime Text كمحرر افتراضي
git config --global core.editor "subl -n -w"
# تعيين Nano كمحرر افتراضي (بسيط، يعتمد على الطرفية)
git config --global core.editor "nano"
# تعيين Vim كمحرر افتراضي (افتراضي Git)
git config --global core.editor "vim"
# تعيين Notepad++ (Windows)
git config --global core.editor "'C:/Program Files/Notepad++/notepad++.exe' -multiInst -notabbar -nosession -noPlugin"
اسم الفرع الافتراضي
# تعيين اسم الفرع الافتراضي إلى "main" (اتفاقية حديثة)
git config --global init.defaultBranch main
سابقاً، كان الافتراضي "master"، لكن "main" الآن معياري.
تكوين نهايات الأسطر
تستخدم أنظمة التشغيل المختلفة أحرف نهاية سطر مختلفة، مما قد يسبب مشاكل في التعاون عبر المنصات:
Windows:
# Checkout Windows-style (CRLF)، commit Unix-style (LF)
git config --global core.autocrlf true
macOS/Linux:
# Checkout كما هو (LF)، commit Unix-style (LF)
git config --global core.autocrlf input
فهم نهايات الأسطر:
• Windows يستخدم CRLF (Carriage Return + Line Feed: \r\n)
• Unix/Mac يستخدم LF (Line Feed: \n)
• Git يتعامل مع التحويل تلقائياً مع autocrlf
مهم: التكوين الصحيح لنهايات الأسطر يمنع التغييرات "الوهمية" حيث تظهر Git كل سطر على أنه معدل عندما لا يتغير شيء فعلياً.
إخراج ملون
# تمكين الإخراج الملون (عادة ممكّن افتراضياً)
git config --global color.ui auto
هذا يجعل إخراج Git أسهل في القراءة مع معلومات مرمزة بالألوان.
مساعد بيانات الاعتماد
Windows:
git config --global credential.helper manager
macOS:
git config --global credential.helper osxkeychain
Linux:
git config --global credential.helper cache
هذا يخزن بيانات اعتمادك حتى لا تضطر لإدخالها بشكل متكرر.
عرض تكوينك
# عرض جميع إعدادات التكوين
git config --list
# عرض جميع الإعدادات مع مواقع ملفاتها
git config --list --show-origin
# عرض إعداد محدد
git config user.name
git config user.email
# عرض الإعدادات العامة فقط
git config --global --list
# عرض الإعدادات المحلية فقط
git config --local --list
تحرير ملفات التكوين
# فتح التكوين العام في المحرر الافتراضي
git config --global --edit
# فتح التكوين المحلي في المحرر الافتراضي (قم بالتشغيل داخل مستودع)
git config --local --edit
# فتح تكوين النظام في المحرر الافتراضي (يتطلب مسؤول)
git config --system --edit
تكوينات إضافية مفيدة
# تعيين سلوك السحب الافتراضي (merge أو rebase)
git config --global pull.rebase false
# تمكين اقتراحات الأوامر المفيدة
git config --global help.autocorrect 10
# تعيين أداة diff الافتراضية
git config --global diff.tool vimdiff
# تعيين أداة الدمج الافتراضية
git config --global merge.tool vimdiff
# تجاهل أذونات الملف (مفيد للعمل عبر المنصات)
git config --global core.fileMode false
# إظهار اسم الفرع الأصلي في علامات التعارض
git config --global merge.conflictstyle diff3
توصية: ابدأ بالإعدادات الأساسية (الاسم، البريد الإلكتروني، المحرر، الفرع الافتراضي، نهايات الأسطر) وأضف المزيد من التكوينات كلما أصبحت مرتاحاً مع Git.
إزالة إعدادات التكوين
# إزالة إعداد محدد
git config --global --unset user.name
# إزالة قسم
git config --global --remove-section user
مثال على الإعداد الأولي الكامل
إليك إعداد أولي كامل لتثبيت Git جديد:
# إعدادات الهوية الأساسية
git config --global user.name "John Doe"
git config --global user.email "john.doe@gmail.com"
# اسم الفرع الافتراضي
git config --global init.defaultBranch main
# نهايات الأسطر (اختر بناءً على نظام التشغيل الخاص بك)
git config --global core.autocrlf true # Windows
# أو
git config --global core.autocrlf input # macOS/Linux
# المحرر الافتراضي (اختر محررك المفضل)
git config --global core.editor "code --wait"
# الإخراج الملون
git config --global color.ui auto
# سلوك السحب
git config --global pull.rebase false
# التحقق من الإعدادات
git config --list
استكشاف المشاكل الشائعة
المشكلة: أمر Git غير موجود
الحل:
1. إعادة تشغيل الطرفية/موجه الأوامر
2. التحقق من أن متغير PATH يتضمن Git
3. إعادة تثبيت Git مع خيار PATH الصحيح
المشكلة: بريد إلكتروني خاطئ في الالتزامات
الحل:
git config --global user.email "correct@email.com"
(ملاحظة: يؤثر فقط على الالتزامات المستقبلية)
المشكلة: رفض الإذن (Windows)
الحل:
قم بتشغيل Command Prompt أو PowerShell كمسؤول
المشكلة: غير قادر على تحرير التكوين
الحل:
تحرير ملف التكوين يدوياً:
Windows: C:\Users\YourName\.gitconfig
Mac/Linux: ~/.gitconfig
تمرين عملي:
أكمل مهام التكوين هذه:
- تحقق من أن Git مثبتة عن طريق التحقق من الإصدار
- قم بتكوين اسمك وبريدك الإلكتروني عالمياً
- عيّن اسم فرعك الافتراضي إلى "main"
- قم بتكوين نهايات الأسطر لنظام التشغيل الخاص بك
- عيّن محرر النص المفضل لديك
- اعرض جميع إعدادات تكوين Git الخاصة بك
الأوامر:
git --version git config --global user.name "Your Name" git config --global user.email "your@email.com" git config --global init.defaultBranch main git config --global core.autocrlf true # أو input git config --global core.editor "code --wait" git config --list
الملخص
في هذا الدرس، تعلمت:
- كيفية تثبيت Git على Windows و macOS و Linux
- كيفية التحقق من تثبيت Git باستخدام git --version
- المستويات الثلاثة للتكوين: النظام، العام، والمحلي
- التكوين الأساسي: الاسم، البريد الإلكتروني، المحرر، اسم الفرع، نهايات الأسطر
- كيفية عرض وتحرير إعدادات التكوين
- مساعدات بيانات الاعتماد لتخزين المصادقة
- استكشاف أخطاء التكوين الشائعة
التالي: في الدرس التالي، سنغوص بعمق في بنية Git لفهم كيف تخزن Git وتدير بياناتك!