🔸️ما هو Git ولماذا يحظى بشعبية كبيرة؟
إن Git هو نظام التحكم في الإصدار (Version Control System) الأكثر شيوعاً في العالم .
يسجل نظام التحكم في الإصدار التغييرات التي تم إجراؤها على الكود الخاص بنا بمرور الوقت في قاعدة بيانات خاصة تسمى المستودع (Repository).
يمكننا أن ننظر إلى تاريخ مشروعنا ونرى من الذي أجرى التغييرات ومتى ولماذا. وإذا أفسدنا شيئًا ما،
فيمكننا بسهولة إعادة مشروعنا إلى حالته السابقة.
بدون نظام التحكم في الإصدار، سيتعين علينا تخزين نسخ من المشروع بأكمله باستمرار في مجلدات مختلفة.
وهذا بطيء جدًا و غير عملي على الإطلاق، خاصةً إذا كان يتعين على عدة أشخاص العمل في نفس المشروع، سيتعين علينا أن نطرح باستمرار أحدث التعليمات البرمجية عبر البريد الإلكتروني أو بعض الآليات الأخرى ثم ندمج التغييرات يدويًا.
لذلك، باختصار، باستخدام نظام التحكم في الإصدار(Git)، يمكننا تتبع تاريخ مشروعنا والعمل معًا.
🔸️ أنواع Version Control Systems :
تنقسم أنظمة التحكم في الإصدار إلى فئتين:
1️⃣ مركزية (centralized).
2️⃣ موزعة (distributed).
في النظام المركزي، يتصل جميع أعضاء الفريق بخادم مركزي (central server) للحصول على أحدث نسخة من الكود ومشاركة تغييراتهم مع الآخرين.
《 يعد Subversion وخادم Microsoft Team Foundation أمثلة على أنظمة التحكم في الإصدار المركزية. 》
المشكلة في المعماربة المركزية هي نقطة الفشل الوحيدة ( the single point of failure ).
حيث إذا أصبح الخادم غير متصل بالإنترنت(offline)، فلن نتمكن من التعاون أو حفظ لقطات لمشروعنا، لذلك يتعين علينا الانتظار حتى يعود الخادم متصلاً بالإنترنت مرة أخرى.
في الأنظمة الموزعة، ليس لدينا هذه المشاكل.
كل عضو في الفريق لديه نسخة من المشروع مع تاريخه على أجهزته، حتى نتمكن من حفظ لقطات من مشروعنا محليًا على أجهزتنا.
إذا كان الخادم المركزي غير متصل بالإنترنت، فيمكننا مزامنة عملنا مباشرة مع الآخرين.
《 يعد Git و Mercurial أمثلة على أنظمة التحكم في الإصدار الموزعة. 》
من بين كل ذلك، يعد Git نظام التحكم في الإصدار الأكثر شيوعًا في العالم لأنه مجاني ومفتوح المصدر وسريع للغاية وقابل للتطوير.
تعتبر العمليات مثل التفرع (branching) والدمج (merging) بطيئة في أنظمة التحكم في الإصدارات الأخرى مثل Subversion أو TFS، ولكنها سريعة جدًا في Git.
لذا فإن Git موجود في كل مكان تقريبًا.
~ أكثر من 90% من المشاريع البرمجية في العالم تستخدم Git. ~
وهذا هو السبب وراء ذكر Git في كل وصف وظيفي تقريبًا لمطور البرامج.
By :Aya Khlif
https://prince-sy.netlify.app/index.html
رابط الموقع الرئيسي لتصفح الكورسات والمقالات
