التعريف المختصر
Git هو البرنامج الذي يتتبع تعديلات الكود على الجهاز، و GitHub هو الموقع الذي يحفظ تلك المستودعات على الإنترنت ويضيف إليها أدوات التعاون: الصلاحيات، ومراجعة التعديلات، وتتبع المهام. يمكن أن يكون المستودع عامًا يراه الجميع، أو خاصًا لا يراه إلا من تدعوه.
شرح مبسط
تخيل ملفًا مشتركًا لعقد مهم، لكن بدل أن تحفظ «العقد النهائي 3 معدل» وتضيع بين النسخ، كل تعديل يُسجل في دفتر واحد: من غيّر، وماذا غيّر، ولماذا. وتستطيع في أي لحظة أن ترى العقد كما كان قبل شهر. هذا ما يقدمه GitHub للكود.
ما الذي يهم صاحب المشروع تحديدًا، حتى لو لم يكتب سطر كود واحد؟
- الملكية: المستودع في حسابك أنت، فإذا انتهى عقدك مع المطور أو تغيرت الأداة يبقى الكود عندك.
- الاستمرارية: أي مطور جديد يستطيع أن يبدأ من حيث توقف السابق، لأنه يرى التاريخ كاملًا.
- المراجعة: تستطيع أن ترى ما الذي تغير قبل الإطلاق، أو أن تطلب من شخص خبير مراجعته.
- النسخة الاحتياطية: نسخة من الكود خارج أي أداة بناء أو استضافة.
GitHub يحفظ الكود، لا البيانات. طلبات العملاء وتسجيلاتهم في قاعدة البيانات لا تذهب إلى المستودع، ويجب ألا تذهب أصلًا. وكذلك المفاتيح السرية، فمكانها المتغيرات السرية.
ولا تحتاج أن تتعلم الأوامر لتستفيد. يكفي أن تعرف ثلاثة أشياء: اسم حسابك، واسم المستودع الخاص بمشروعك، ومن يملك صلاحية الكتابة عليه. اكتبها في مكان آمن مع بيانات النطاق والاستضافة، فهي «مفاتيح» مشروعك الرقمية.
مثال من السوق السعودي
مطور مستقل في الرياض بنى لعميل نظام حجز لملاعب بادل. في العقد اتفقا على أن الكود ملك العميل، فأنشأ العميل حسابًا على GitHub باسم منشأته ومستودعًا خاصًا، وأضاف المستقل متعاونًا عليه. بعد التسليم أزال العميل صلاحية المستقل، وبقي المستودع عنده كاملًا. بعد سنة احتاج العميل ميزة جديدة، فأعطى مطورًا آخر صلاحية على المستودع نفسه، فبدأ العمل في اليوم الأول. لو كان الكود في حساب المستقل الشخصي لتعقد كل هذا. للمستقلين تفاصيل أكثر في أوترا للمستقلين.
كيف يظهر في أوترا
في أوترا يوجد تبويب «GitHub» داخل المشروع: تربط حسابك برمز وصول شخصي (Personal Access Token) بصلاحية repo، ثم تدفع مشروعك مباشرة إلى مستودعك الخاص وتحتفظ بنسخة كاملة من الكود. وتستطيع أيضًا أن تستورد مستودعًا قائمًا من GitHub عند إنشاء مشروع جديد، فتقرأ أوترا الكود وتشغله وتكمل التطوير عليه بطلباتك. ولمن يفضل الأوامر، أدوات git متاحة في الترمينال. الخطوات كاملة في دليل مزامنة GitHub وتصدير الكود.
مصطلحات ذات صلة
- المستودع (Repository): الوحدة التي يحفظها GitHub لكل مشروع.
- نقطة الحفظ: الرجوع داخل أداة البناء، مقابل تاريخ Git الكامل.
- المتغيرات السرية: ما يجب ألا يُرفع إلى GitHub أبدًا.
- النشر (Deploy): الخطوة التي تأخذ الكود من المستودع إلى الموقع الحي.