استخدام Git على Linux
مرحبًا بك في دليل المبتدئين لاستخدام Git على Linux! صُمّم هذا الدليل لمساعدتك على البدء مع Git وGitLab، ولتوفير فهم أساسي لكيفية استخدام هذه الأدوات.
نظرة عامة على Git
يُحفظ الكود المستخدم لبناء التطبيقات في مجموعة من المجلدات والملفات على نظامك. Git تطبيق يتيح النسخ الاحتياطي لهذه المجموعة ومشاركتها واستنساخها. Git نظام تحكم بالإصدارات يتيح تتبع التغييرات في الكود والتعاون مع الآخرين. أداة قوية تُستخدم على نطاق واسع في مجتمع المصادر المفتوحة. GitLab منصة ويب لاستضافة مستودعات Git وإدارتها عبر الإنترنت، ما يسهّل التعاون وتتبع التغييرات.
ما المقصود بالمستودع؟
repo، اختصار repository، مجلد محلي تديره Git مع نسخة عبر الإنترنت. مستودع GitLab مجموعة ملفات ومجلدات تشكّل مشروعًا. قد يحتوي على فروع، أي نسخ مستقلة من المشروع نفسه. الفرع نسخة منفصلة من مشروعك تتيح إجراء تغييرات دون التأثير على النسخة الرئيسية. مفيد لاختبار ميزات جديدة أو إصلاح أخطاء دون تعطيل المشروع الرئيسي. لديك مستودع محلي على القرص، ومستودع بعيد مخزّن عبر الإنترنت باستخدام Git وGitLab.
استخدام Git
ستحتاج إلى تثبيت Git على نظامك. في الأنظمة المبنية على Debian، يمكنك استخدام الأمر apt لتثبيت حزم البرامج. هنا نستخدمه لتثبيت Git، الحزمة التي توفر نظام التحكم بالإصدارات Git. الأمر sudo يمنح المثبّت صلاحية التثبيت على نظامك.
sudo apt install gitالوصول إلى GitLab
قبل استخدام GitLab، أنشئ حسابًا بزيارة موقع GitLab وإكمال التسجيل.
يتطلب GitLab SSH للاتصال الآمن والمصادقة بين العميل (أنت) وخادم GitLab عند عمليات Git مثل cloning و_pushing_ و_fetching_. الاستنساخ إنشاء نسخة محلية من المستودع، والجلب (fetch) جلب التغييرات من المستودع إلى نسختك المحلية، والدفع (push) إرسال التغييرات والمحتوى إلى المستودع على الخادم. SSH (Secure Shell) بروتوكول شبكة للوصول الآمن عن بُعد ويستخدم أزواج مفاتيح للمصادقة وإنشاء اتصالات آمنة. لإنشاء زوج مفاتيح SSH، استخدم الأمر ssh-keygen في الطرفية.
ssh-keygenحدّد اسم ملف، أو اضغط Enter للاسم الافتراضي، واختياريًا كلمة مرور. في مجلد Home، داخل مجلد مخفي .ssh، يوجد الآن ملفان id_rsa إذا استخدمت الأسماء الافتراضية. ملف .pub هو المفتاح العام ويمكنك قراءة محتواه بمحرّر نصوص.
سجّل الدخول إلى حساب GitLab وانتقل إلى إعدادات المستخدم. انقر «SSH Keys» في القائمة اليسرى. انسخ المفتاح العام والصقه في حقل Key وأعطِ المفتاح عنوانًا مناسبًا مثل PC@Home. انقر «Add Key» لحفظ المفتاح. أُضيف مفتاح SSH العام إلى حساب GitLab ويمكنك استخدامه للمصادقة مع مستودعات GitLab. اختبر المفاتيح والاتصال بـ ssh -T لرؤية رسالة ترحيب من GitLab.
$ ssh -T git@ssh.gitlab.gnome.org
Welcome to GitLab, @username!أوامر Git الأساسية
بعد تثبيت Git وإعداد مفتاح SSH مع GitLab، إليك بعض أوامر Git الأساسية لإدارة المستودعات. تساعدك على العمل مع المشاريع الحالية وإبقائها محدّثة وإجراء التغييرات بأمان.
1. استنساخ مستودع
الاستنساخ إنشاء نسخة محلية من مستودع بعيد. مفيد عند العمل على مشروع موجود على GitLab. لاستنساخ مستودع، استخدم git clone متبوعًا بعنوان URL:
git clone https://gitlab.com/username/repository.gitاستبدل https://gitlab.com/username/repository.git بعنوان المستودع المطلوب. ينشئ هذا الأمر نسخة محلية في دليل جديد.
2. التحقق من حالة المستودع
لمعرفة ما إذا كان المستودع المحلي يحتوي على تغييرات أو لعرض حالته:
git statusيعرض الملفات المعدّلة أو المضافة أو المحذوفة في نسختك المحلية.
3. المستودعات البعيدة
المستودعات البعيدة نسخ من مشروعك مستضافة عبر الإنترنت، مثل GitLab. الموقع المركزي حيث يُخزَّن الكود ويمكن للآخرين الوصول إليه. المستودع البعيد الافتراضي عند الاستنساخ يُسمى origin. يمكنك إضافة أو إزالة أو إدراج المستودعات البعيدة بالأوامر التالية:
إدراج المستودعات البعيدة:
لمعرفة المستودعات البعيدة المرتبطة بمشروعك المحلي:
git remote -vيسرد كل المستودعات البعيدة وعناوين URL. عادةً ترى
originهنا.إضافة مستودع بعيد:
لإضافة مستودع بعيد جديد:
git remote add <name> <url>استبدل
<name>باسم المستودع البعيد و<url>بعنوان URL.إزالة مستودع بعيد:
لإزالة مستودع بعيد:
git remote remove <name>استبدل
<name>باسم المستودع البعيد المراد إزالته.
4. جلب التغييرات من المستودع البعيد
لمعرفة التغييرات في المستودع البعيد دون تطبيقها على نسختك المحلية:
git fetch originيجلب أحدث التغييرات من المستودع البعيد دون دمجها في فرعك المحلي. طريقة للتحقق من التحديثات قبل دمجها.
5. إعادة ضبط المستودع المحلي
لإعادة ضبط المستودع المحلي ليطابق المستودع البعيد تمامًا، استخدم reset «hard». تحذير: سيستبدل أي تغييرات محلية.
git reset --hard origin/branch-nameاستبدل branch-name باسم الفرع. يتجاهل التغييرات المحلية ويجعل المستودع المحلي مطابقًا للبعيد.
6. عرض سجل الالتزامات
لرؤية قائمة التغييرات في المستودع عبر الزمن:
git logيعرض سجل الالتزامات، بما في ذلك المؤلف والتاريخ والرسالة لكل تغيير. مفيد لفهم ما تغيّر ومتى.
ملخص
تساعدك أوامر Git الأساسية هذه على العمل مع المستودعات وإبقاء النسخ المحلية محدّثة وإدارة المستودعات البعيدة بأمان. استنساخ المستودعات والتحقق من حالة النسخة المحلية وإدارة المستودعات البعيدة مهارات أساسية لإدارة المشاريع بـ Git.