اليوم إستغربت كثيرا عندما قمت ببحث في محرك قوقل Google عن نظام جت أو جيت بالعربية فلم أجد سوى القليل الناذر من المدونات التي تتحدث عنه بصفة موجزة أو العكس أي بصفة جد معقدة تجعل القاري يرتعش من الخوف 8O ويتجنب حتى ذكر إسمه علنا. على العكس تماما فعندما تتعرف على هذا النظام فلن يمكنك العيش بعدها بدونه سواء كنت مبرمج، رسام، مدون أو تقوم بأي شي على جهاز الحاسوب، فلا يجب حصر هذا النظام على المبرمجين أو المصادر المفتوحة أو غيرها، وذكرت هذا لأنني سألت بعض الأصدقاء الذين لديهم بعض المعرفة في مجال الحواسيب فصدمت لإجاباتهم فمنهم من قال ( آه الجيتهيب github نعم أعرفه إنه للمصادر المفتوحة ويمكنك وضع أي كود والتحميل كذلك ...) ، :cry: حقا الشخص يصدم لمثل هته الإجابات لأنه إن بحثت بلغة أخرى كالإنجليزية تجد الشرح الدقيق والمبسط لمعنى هذا النظام.

فدعنا نوضح مفهومه حتى وإن كنت غير مبرمج :cool: ولكن تستعمل الحاسوب لإنشاء مذكرة التخرج في أي مجال، تقوم بإنشاء عمليات حساب على الإكسل، تقول بإنشاء فواتير للزبائن، ...


مقدمة

جت أو git هو برنامج لإدراة الإصدارت أو النسخ أي ببساطة حفظ جميع التغيرات في مجلد معين والرجوع لأي تاريخ سابق، كما يمكن إستعماله لعدة أغراض نذكر منها

  • التنسيق والتعاون بن اﻷفراد ﻹنجاز مشروع معين
  • حفظ جميع مراحل إنجاز مشروع والتنقل بينها بسلاسة
  • حفظ المشروع أو العمل المنجز في مستودع أو مكان للتخزين آمن في شبكة اﻹنترنت
  • ...

ويتميز نظام جت git بالمرونة والسلاسة فهو سهل التنصيب وسهل اﻹستخدام ومتوفر لجميع أنظمة التشغيل (وينداوز، لينيكس، والماك أو أس )


التثبيت

يمكن تحميل البرنامج لجميع أنظمة التشغيل من الموقع الرسمي فالموقع يقوم بتحديد نظام التشغيل لديك.

gitscm

بالنسبة لنظام لينيكس أوبونتو/ ديبيان يكفي تنفيذ اﻷمر :

apt-get install git

أو

sudo apt-get install git

بعد التثبيت يكون التنفيذ من موجه اﻷوامر command line أو terminal وللتحقق يجب تنفيذ اﻷمر، على لينيكس والماك فهو سهل وأساسي أما بالنسبة لوندوز فننصح بمراجعة المقال طرق فتح نافذة الأوامر على الويندوز

git --version

 version

terminal

وعند ظهور رقم النسخة فهذا يدل على التثبيت الناجح للنظام. بعدها يمكن بداية العمل مباشرة على النظام.


أول خطوة إنشاء مستودع

للبدئ بالعمل على النظام يجب أولا إنشاء مستودع والذي ويعطي إمكانية تنفيذ جميع اﻷوامر اﻷخرى فبدون إنشاء مستودع لايمكن القيام بأي شيء فنظام جت يكون موجود على شكل مستودعات في مجلدات مختلفة، كل مستودع يحفظ كل تغير لكل ملف في المجلد المعني. سنقوم إذا بإنشاء أول مستودع لنا ولهذا

  1. ننشئ مجلد جديد
  2. ننشيء بعض الملفات
  3. ننتقل إليه من نافذة اﻷوامر
  4. نقوم بإنشاء المستودع

إنشاء مجلد جديد

نقوم بإنشاء مجلد جديد نسميه example على المسار

  • D:example على الوندوز
  • ~/example على اللينيكس

Screenshot from 2016-03-07 13:05:50

إنشاء ملفات في المجلد الجديد

نقوم بإنشاء ملف وورد مثلا نسميه file

Screenshot from 2016-03-07 13:08:22 Screenshot from 2016-03-07 13:09:46

التنقل من نافذة اﻷوامر إلى المجلد الجديد

  • على اللينيكس يكفي فتح نافذة اﻷوامر وإدخال اﻷمر

cd ~/example

Screenshot from 2016-03-07 13:25:18

  • على الوندوز

d:

cd d:example

نقوم بعدها بإنشاء المستودع

للتأكد من أن اﻹنتقال ناجح نقوم بسرد الملفات الموجودة

  • على الوندوز dir
  • على لينيكس ls

فنجد الملف file.docx أو الملفات التي أنشأتها

بعدها نقوم بتنفيذ اﻷمر

git init

فنتلقى بذلك رسالة تقول initialized empty git repository in وتعني تم إنشاء مستودع فارغ في المجلد المذكور، مما يمكننا من البدء في إستخدام اﻷوامر

Screenshot from 2016-03-07 13:33:38


الخطوة الثانية مشاهدة وحفظ التغيرات

لمشاهدة التغيرات نقوم بتنفيذ اﻷمر git status والذي يرينا

  • قائمة الملفات والتغيرات التي حدثت أي قائمة الملفات الموجودة في المجلد
  • حالة كل ملف (جديد، تغير، محذوف، ...)
  • حالة الملفات الجاهزة، المتجاهلة والمضافة للمستودع.

فكما نلاحظ في الصورة أدناه

  • يوجد ملف واحد باﻷحمر في قائمة المتجاهلة (untracked)
  • ولا شي في القائمة الجاهزة (nothing added to ...)

Screenshot from 2016-03-07 19:59:24

ولهذا يجب إضافة ملفنا file.docx إلى قائمة الملفات الجاهزة لرفعه إلى المستودع ولهذا نستخدم اﻷمر git add file.docx ونقوم بعدها بمعاينة الحالة بإستخدام اﻷمر المحبب أي git status فنلاحظ اﻹخضرار وهذا يدل على أنه في القائمة الجاهزة ومستعد لنقله إلى المستودع.

Screenshot from 2016-03-07 20:10:36

بعدها والخطوة اﻷخيرة هي حفظ وإرسال التغيرات إلى المستودع ولهذا نقوم بإستخدام اﻷمر

git commit -m "just a simple commit"

بعد القيام بهذا الأمر يعطينا النظام معلومات ملخصة عن التغيرات التي حدثت

  • عدد الملفات المتغيرة
  • عدد الإضافات
  • عدد المحذوفات

الخيار -m أي message بمعنى رسالة وهي تحفظ وتعتبر إسم للتسجيل والتغيرات التي قمنا بها

cc

لنجرب إجراء تغيير آخر في الملف ونحفظ مجددا

cc2

نقوم بنفس العملية مجددا أي :

git status

git add file.docx

git status

git commit -m "idafat kayfa el hal"

git status

cc3

لدينا الآن حفظ ثاني بعنوان أو برسالة idafat kayfa el hal أي "إضافة كيف الحال" لدينا الآن تعليمة جديدة تقوم بسرد قائمة المحفوضات في المستودع وهي :

git log

cc4

نلاحظ قائمة التغيرات والمسؤول الذي غير، التاريخ، ورقم الحفظ الذي يكون وحيد في كل مستودع أي غير متكرر وهو يستخدم لعدة أوامر سنراها لاحقا إن شاء الله. هنالك كذلك أمر يظهر المحفوظات في سطر واحر

git log --oneline

cc5


الرجوع لحالة سابقة

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

git checkout 95bdf74 

95bdf74 هو رقم الحفظ المذكور أعلاه أي كل حفظ لديه رقم واحد ووحيد فبعد التعليمة git log نتحصل على أرقام الحفظ وعند إستعمال الأمر checkout نعود بالزمن عند ذلك الحفظ.

cc6

وللعودة مجددا لآخر حالة يجب إستعمال الأمر

git checkout master

cc7


 

الملخص

أول خطوة لازمة لإنشاء المستودعgit initمعرفة حالة الملفات وهل يوجد تغيرات أم لاgit statusإضافة الملفات للقائمة الجاهزة للإرسال للمستودعgit addإنشاء حفظ جديد في المستودع مع إضافة إسم الحفظgit commit -mإظهار وسرد قائمة المحفوظات بجميع المعلوماتgit logسرد قائمة المحفوظات كل في سطر واحد بالإسم فقطgit log --onelineإضافة جميع الملفات بدون تحديد إسم الملفgit add --allللتنقل بين المحفوظاتgit checkout 123456للرجوع لآخر حفظ في المستودعgit checkout master