الدرس 2 · الأساسيات
ثبّت Git وعاين هوية الإيداع بأمان
تحقّق من مسار Git وإصداره، وثبّته عند الحاجة فقط. ثم عاين اسمًا وبريدًا تجريبيين في الطرفية وGitTree دون تغيير هويتك الشخصية أو إنشاء المستودع مبكرًا.
- المستوى: مبتدئ
- قراءة 8 دقائق
- فيديو 5 دقائق
- آخر تحديث
- قبل هذا الدرس: ميّز بين Git وGitTree ومزوّد الاستضافة
حُفظ التقدّم في هذا المتصفح.
يحمّل التشغيل الفيديو من YouTube (وضع الخصوصية المحسّنة).
ما الذي ستتعلمه
- التمييز بين غياب Git وغياب المستودع.
- التحقّق من الملف التنفيذي والإصدار بعد التثبيت.
- فهم الفرق بين نطاق الأمر وإعدادات المستودع والإعدادات العامة.
- معاينة هوية GitTree Demo وإلغاء النموذج دون حفظه.
قبل البدء
أكمل الدرس الأول أولًا. تبدأ دون مستودع للدورة: لم يُهيَّأ شيء بعد. استخدم مجلدًا خارج المستودعات، واترك GitTree عند علامة تبويب جديدة. سننشئ المشروع في الدرس الرابع.
فُحصت أوامر الطرفية باستخدام Git 2.52.0 على macOS (/opt/homebrew/bin/git) وعلى Ubuntu 24.04 (/opt/git-2.52/bin/git). قد يختلف المسار والإصدار عندك. الحد الأدنى المثبت في مصادر GitTree هو 2.39.0، وليس ذلك توصية باستخدام إصدار قديم أو ادعاءً بأنه الأحدث. اختر حزمة مدعومة ثم تحقّق من إصدارها.
لا يتطلب Git الأصلي تسجيل الدخول. يطلب GitTree تسجيل الدخول ببريدك الإلكتروني أو بمزوّد Git، ثم تشمل الخطة المجانية كل ميزات Git المحلية وتبقى مستودعاتك على جهازك. سُجّل الفيديو قبل هذا الشرط، لذلك لا تظهر فيه نافذة تسجيل الدخول. هوية الإيداع ليست حساب GitTree ولا بيانات اعتماد المضيف ولا توقيعًا مشفّرًا. سُجّلت خطوات GitTree في الإصدار 2.0 على Ubuntu 24.04. على macOS اضغط Command حيث يستخدم Windows وLinux مفتاح Ctrl.
الفكرة
يحفظ الإيداع عادةً اسم مؤلف التغيير وبريده، واسم الشخص الذي أودعه وبريده. قد يختلفان عندما يطبّق شخص عمل شخص آخر. في الحالة البسيطة تُستخدم هويتك المضبوطة للدورين. كتابة اسم شخص لا تثبت أنك صاحب حسابه؛ للتوقيع والتحقّق من الهوية دروس مستقلة.
تخيّل الإعداد عنوانًا تكتبه على السجلات المقبلة، لا بطاقة دخول إلى خادم. تغيير الاسم لا يعيد تسمية الإيداعات السابقة. وقد يصبح البريد المسجّل ظاهرًا عند مشاركة التاريخ، لذا اختر عنوانًا تقبل ظهوره فيه. جميع عناوين الدورة خيالية.
| النطاق أو الآلية | أين يستمر الإعداد؟ | الأثر |
|---|---|---|
git -c key=value … | في استدعاء الأمر وحده | يغيّر القيمة لذلك الأمر دون حفظها |
| إعداد المستودع المحلي | إعداد المستودع، عادةً .git/config | يخص هذا المستودع |
| الإعداد العام | إعداد Git الخاص بالمستخدم | قيمة افتراضية لمستودعاته، ويمكن تجاوزها |
| ملف تعريف GitTree بالتمرير | بيانات التطبيق وأوامره | لا يغيّر الإعداد العام ولا ينتقل إلى طرفية خارجية |
| ملف تعريف بالكتابة العامة | الإعداد العام عند التبديل | يؤثر في أدوات Git الأخرى أيضًا؛ لن نستخدمه هنا |
بالنسبة إلى user.name وuser.email العاديين، يتقدّم إعداد المستودع على القيمة العامة. ويتجاوز -c الأصلي قيمة الإعداد لهذا الاستدعاء. لكن GitTree يحافظ عمدًا على هوية المستودع عند تمرير ملف التعريف، كما توضّح واجهته؛ لا تساوِ هذه السياسة بكتابة -c يدويًا. قد تتدخل متغيرات البيئة وملفات الإعداد المضمّنة وإعدادات مجلدات العمل المرتبطة؛ ندرس تشخيصها في الدرس 52. راجع مرجع الإعدادات وخيارات أمر Git.
حدود التغيير: قراءة المسار والإصدار ومعاينة الهوية لا تغيّر مجلد العمل أو منطقة التجهيز أو المراجع المحلية أو البعيدة. التثبيت يغيّر برامج الجهاز، وحفظ ملف التعريف أو الإعداد يكتب بيانات مستمرة؛ لذلك نلغي المعاينة.
في الطرفية
1. تحقّق أولًا
على macOS، أو على Windows داخل Git Bash، أو على Linux:
command -v git
git --versionالناتج المرصود على جهاز التأليف، بالترتيب:
/opt/homebrew/bin/git
git version 2.52.0ليس عليك نسخ هذا المسار؛ اقرأ نتيجة جهازك. في PowerShell استخدم Get-Command git بدل أمر المسار الأول، ثم أمر الإصدار نفسه. لم يُنفّذ فحص Windows في هذه الجولة.
2. ثبّت عند الحاجة فقط
تجاوز هذه الخطوة إذا كان Git المدعوم يعمل بالفعل. الخيارات الآتية تغيّر برامج النظام وقد تطلب موافقتك؛ لم نشغّلها أثناء تأليف الدرس.
- macOS: اختر أدوات Xcode لسطر الأوامر، أو Homebrew إن كان مثبتًا لديك. لا تحتاج إلى تشغيل الخيارين معًا. خيارات التثبيت الرسمية.
xcode-select --installالبديل، عند وجود Homebrew مسبقًا:
brew install git- Windows: نزّل المثبّت المناسب لمعمارية الجهاز من صفحة Git for Windows الرسمية، وأكمل التثبيت ثم افتح طرفية جديدة. لا نفترض أسماء شاشات المثبّت.
- Linux: استخدم قناة الحزم المدعومة لتوزيعتك. على Debian/Ubuntu يمكن استخدام الأمرين التاليين، وعلى Fedora يُستخدم
sudo dnf install git. افحص الإصدار الناتج؛ قد تتضمن توزيعة قديمة إصدارًا دون الحد المطلوب. لا تضف مستودع حزم خارجيًا دون مراجعة الثقة والصيانة. الخيارات الرسمية.
sudo apt update
sudo apt install gitتختلف رسائل التثبيت بحسب النظام والحزمة وحالتها، لذلك لا نضع ناتجًا مختلقًا. بعد التثبيت أعد فتح الطرفية وكرّر فحص المسار والإصدار، ثم أعد تشغيل GitTree عند الحاجة.
3. عاين الهوية دون حفظ
يعمل الاستعلامان خارج أي مستودع. نحمل الاسم والبريد الخياليين صراحةً مع كل أمر.
git -c user.name="GitTree Demo" -c user.email=demo@example.com config --get user.name
git -c user.name="GitTree Demo" -c user.email=demo@example.com config --get user.emailالناتج المرصود، سطر من كل أمر:
GitTree Demo
demo@example.comغيّر بريد الأمر فقط:
git -c user.name="GitTree Demo" -c user.email=maya@example.com config --get user.emailالناتج:
maya@example.comهذه القيمة تخص الاستدعاء الحالي. إعادة استعلام البريد الأصلي ستعيد demo@example.com لأننا نمرّره مجددًا. لم نحفظ إعدادًا ولم ننشئ إيداعًا. لا تطبع كل إعداداتك للتصوير؛ قد تتضمن عناوين شخصية أو روابط تحمل بيانات اعتماد.
في GitTree
عند تعذّر اكتشاف Git
إذا فشل الاكتشاف يعرض GitTree إحدى الشاشات يحتاج GitTree إلى Git (GitTree needs Git)، أو إصدار Git هذا قديم جدًا (This Git is too old)، أو تعذّر استخدام Git هذا (This Git could not be used). تعرض أماكن البحث (Looked in) المسارات التي بحث فيها عند غياب Git. ثبّت Git أو أصلحه خارج التطبيق ثم اختر التحقق مجددًا (Check again)؛ يبحث GitTree من جديد، ولا يفتح علامة التبويب الجديدة العادية إلا إذا وجد Git صالحًا. يعرض الفيديو ذلك على جهاز يُخفى فيه Git عن التطبيق وحده: شاشة غياب Git، ثم الشاشة نفسها بعد ظهور Git من جديد، ثم علامة التبويب الجديدة.
يظهر الزر تحديد موقع Git… (Locate Git…) على الشاشة نفسها، لكن إجراءه فارغ في المصدر المقروء، فلا تعتمد عليه منتقيًا يعمل؛ استخدم التحقق مجددًا بعد إصلاح التثبيت. لست بحاجة إلى إزالة Git العامل لتشاهد هذه الشاشة.
معاينة الهوية دون مستودع
- من علامة تبويب جديدة افتح التفضيلات (Preferences)، والأمر الإنجليزي التفضيلات (Preferences) ذو المعرّف
app.preferences.open. الاختصار الافتراضي Command+, على macOS وCtrl+, على Windows/Linux. تظهر صفحة التفضيلات بكامل النافذة. - اختر ملفات التعريف (Profiles). اقرأ تنبيه يُمرَّر مع كل أمر git (Passed to each git command): يسري على أوامر GitTree، لا على الطرفيات الخارجية. لا تحرّر أي ملف قائم ولا تبدّل إليه.
- اختر ملف تعريف جديد (New profile). يظهر نموذج غير محفوظ.
- في اسم ملف التعريف (Profile name) اكتب
Course preview. وفي الاسم في الإيداعات (user.name) اكتبGitTree Demo، وفي البريد الإلكتروني في الإيداعات (user.email) اكتبdemo@example.com. - اترك مفتاح التوقيع (user.signingkey) وأمر SSH (core.sshCommand) فارغين. تحت كيف تصل الهوية إلى git (How the identity reaches git) افحص يُمرَّر مع كل أمر git. لا تختر يُكتب في ~/.gitconfig (Written to ~/.gitconfig).
- اختر إلغاء (Cancel)، لا إنشاء ملف التعريف. يغلق النموذج دون إضافة صف جديد. اختر الخروج من التفضيلات (Exit Preferences) للعودة إلى علامة التبويب الجديدة.
- للدخول البديل افتح لوحة الأوامر… (Command Palette…) باستخدام Command+Shift+P أو Ctrl+Shift+P، وابحث عن تبديل الملف الشخصي… (Switch Profile…) في الواجهة الإنجليزية، ومقابله تبديل الملف الشخصي… (Switch Profile…) (
profile.switch). يفتح صفحة ملفات التعريف ولا يختار هوية أخرى تلقائيًا. اخرج دون تبديل.
هناك نافذة مستقلة بعنوان إعداد هويتك في Git (Set up your Git identity) تظهر بعد فشل إيداع بسبب الهوية، وتتضمن حقلي الاسم والبريد وأهداف حفظ صريحة. لا نفتعل هذا الفشل هنا دون مستودع. نضبط هوية المشروع المحلية في الدرس الرابع، ونشرح ملفات التعريف المستمرة في الدرس 52.
النتيجة
في النهاية تعرف مسار Git وإصداره، وتفهم هوية الأمر التجريبية. لا يوجد بعد مجلد عمل للدورة أو منطقة تجهيز أو سجل فروع أو مرجع بعيد أو رسم تاريخ. لم نحفظ إعدادًا عامًا أو ملف تعريف.
أخطاء شائعة
- توقّع Git مرفقًا مع GitTree: مسار الإعداد المقروء يستخدم تثبيت Git الخاص بك.
- اعتبار بريد الحساب هوية إيداع تلقائية: الحساب وبيانات الإيداع أمران منفصلان.
- حفظ هوية الدورة عالميًا: قد يؤثر ذلك في عمل آخر غير متعلق بالدورة.
- توقّع انتقال ملف التعريف إلى طرفية خارجية: وضع التمرير يخص أوامر التطبيق.
- اعتبار الاسم والبريد إذنًا للدفع: المصادقة وصلاحيات الخادم مستقلتان.
عند حدوث مشكلة
إذا لم يعمل أمر الإصدار فافحص التثبيت وبيئة الطرفية أولًا. أما رسالة عدم وجود مستودع فتعني أن Git يعمل، لكن المجلد لا يضم مستودعًا؛ نؤجّل الإنشاء إلى الدرس الرابع.
عند اختلاف الطرفية والتطبيق أعد تشغيل التطبيق بعد التثبيت، واستخدم التحقق مجددًا (Check again) إن بقيت شاشة الاكتشاف. اقرأ المسار والإصدار من التشخيص المتاح. الزر ذو المعالجة الفارغة ليس مسار استعادة مثبتًا.
إذا حفظت ملفًا أو بدّلت إليه بالخطأ، توقّف وحدّد ما تغيّر قبل إعادة القيمة السابقة المعروفة بوسيلتها الصحيحة. لا تحذف ملفات تعريف عشوائية ولا تمسح الإعدادات العامة؛ قد تضم إعدادات لا تخص الدرس. سجل التراجع للمستودع ليس ضمانًا لاستعادة تثبيت البرامج أو إعدادات الهوية.
اختبر فهمك
أجب عن كل سؤال ثم اقرأ السبب. الأسئلة المعلَّمة «مطلوب» تُحتسب لإكمال الدرس.
0 من 6 صحيحة
أجب عن الأسئلة المطلوبة إجابة صحيحة لتكمل الدرس.
جرى التحقق في هذا المتصفح.
تدريب
توقّع نتيجة تغيير البريد إلى maya@example.com، ثم نفّذ استعلام المعاينة المعدّل وقارن. أعد الاستعلام الأصلي. عاين النموذج في GitTree وألغِه، ثم تأكد من عدم إضافة ملف تعريف ومن عدم إنشاء المستودع.
تأكيد منك أنت: لا يستطيع الموقع رؤية جهازك.
لإكمال الدرس، أجب عن الأسئلة المطلوبة إجابة صحيحة وأكّد تنفيذ التمرين العملي.
خلاصة
- افحص الملف التنفيذي والإصدار بعد التثبيت.
- هوية الإيداع بيانات مسجلة وليست مصادقة حساب.
- نطاق الأمر مؤقت، بخلاف إعداد المستودع والإعداد العام وملف التعريف المحفوظ.
ذو صلة
المصطلحات الجديدة
Author — مؤلف؛ committer — مُودِع؛ commit — إيداع؛ profile — ملف تعريف؛ repository — مستودع؛ command palette — لوحة الأوامر. بيانات الهوية ليست توقيعًا.
نص الفيديو
ترجمة التعليق الصوتي الإنجليزي للفيديو، مقطعًا بعد مقطع.
اعرض النص
- تحقّق من Git، ثم عاين الهوية دون حفظها.
- وجود Git وهوية الإيداع يحلّ مشكلتين مختلفتين.
- اعرف الملف التنفيذي الذي ستشغّله الطرفية.
- اقرأ الإصدار بدل تخمينه من رسالة المثبّت.
- يتطلب المصدر المقروء Git 2.39.0 أو أحدث.
- على macOS اختر أدوات سطر الأوامر أو مدير حزم متاحًا.
- على Windows اختر المثبّت الرسمي لمعمارية جهازك.
- على Linux افحص إصدار الحزمة بعد تثبيتها.
- بعد التثبيت افتح طرفية جديدة وكرّر الفحصين.
- يمكن لـ GitTree إعادة الاكتشاف بعد إصلاح التثبيت.
- قد يكتشف التطبيق Git بطريقة تختلف عن الطرفية.
- ظهور زر تحديد الموقع لا يثبت عمله في هذا المصدر.
- اسمك وبريدك بيانات للإيداع، لا اعتماد دخول للخادم.
- المؤلف والمُودِع والحساب والتوقيع مفاهيم مختلفة.
- تغيير الإعداد لا يعيد تسمية أصحاب الإيداعات السابقة.
- مرّر الاسم والبريد الخياليين إلى أمر Git واحد.
- يطبع الاستعلام البريد الممرّر إلى هذا الاستدعاء.
- قيمة نطاق الأمر ليست إعدادًا عامًا محفوظًا.
- غيّر البريد الممرّر فقط، وتوقّع النتيجة قبل التنفيذ.
- ينتج المُدخل الجديد بريد Maya الخيالي لهذا الاستعلام فقط.
- أعد الأمر الأصلي، فيظهر بريده الممرّر مجددًا.
- تستمر إعدادات المستودع والعامة وملفات التعريف في أماكن مختلفة.
- يحافظ تمرير ملف تعريف GitTree على هوية المستودع الخاصة.
- افتح التفضيلات؛ إنها صفحة كاملة وليست عملية مستودع.
- افتح ملفات التعريف واقرأ نطاق تطبيق الهوية.
- يسري ملف التعريف الممرّر على أوامر GitTree لا الطرفيات الخارجية.
- افتح مسودة غير محفوظة؛ سنلغيها قبل إنشاء ملف التعريف.
- استخدم اسمًا واضحًا لتمييز هذه المعاينة.
- اكتب GitTree Demo اسمًا خياليًا للإيداع.
- اكتب العنوان الخيالي، لا بريد حسابك الشخصي.
- أبقِ وضع التمرير، واترك مفتاح التوقيع وأمر SSH فارغين.
- ألغِ المسودة؛ فتح النموذج لا يعني حفظ ملف تعريف.
- عد إلى علامة تبويب جديدة دون إنشاء مستودع.
- تفتح لوحة الأوامر ملفات التعريف دون تبديل تلقائي.
- اخرج مجددًا دون اختيار هوية محفوظة أخرى.
- حفظ هوية الدورة عالميًا قد يؤثر في عمل غير متعلق بها.
- تراجع المستودع ليس ضمانًا لاستعادة التثبيت أو إعداد الهوية.
- تحقّق من Git، وافصل الهوية عن الدخول، واختر نطاق الحفظ.
- تحقّق من نتيجتي البريد ومن بقاء قائمة الملفات كما كانت.
- نفصل لاحقًا ملفات العمل عن النسخة التي تختار إيداعها.