تاريخ GIT

GIT هو أحد هذه الأدوات بهذه البساطة لاستخدامها، حيث لا تكتشف الكثير من نفوق نفاد الحمل. أنت تنتهي استنساخ مستودع من الويب وكذلك هذا عن ذلك. إذا قمت بإجراء تغييرات، فربما تتبعها وكذلك إذا كنت مهذبا حقا، فقد تنتج طلب سحب لتقديم العودة إلى المشروع. ومع ذلك، هناك قدر كبير من ذلك يمكنك القيام به. على سبيل المثال، هل فهمت أن GIT يمكن أن تتبع مستندات الكلمات التعاونية؟ أو إدارة بيانات بدء التشغيل الخاصة بك عبر العديد من صناديق Linux؟

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

على الرغم من أنه في الدفعة التالية، فإنني سأقدم لك بعض الغريب للاستفادة من GIT، وقد تكتشف ذلك مفيدا، وهذا النشر هو أساسا قصة بالضبط كيف جاء GIT. يفهم التقدم مفتوح المصدر لحروب اللهب وكذلك هناك على الأقل عدد قليل في هذه الحكاية. وكذلك في أزياء القراصنة الحقيقية، يقرر بطل القصة أنه لا يحب الأدوات التي يستخدمها ذلك … حسنا، ماذا ستفعل؟

حرب تحكم الإصدار

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

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

أداة مغلقة

يقوم فريق موزز كبير للغاية بإنشاء نواة Linux. بحلول أواخر عام 1998، كان الفريق يمضي وقتا عصيبا مع إدارة المراجعة. كان لدى مطور Kernel، [Larry McVoy]، أعمالا خلقت نسخة موزعة قابلة للتطوير إدارة المنتج يسمى Bitkeker. على الرغم من أنه كان منتجا صناعيا، إلا أن هناك تصريح حي مكنتكم من الاستفادة منها طالما أنك لم تنجح في أداة كذبة أثناء استخدام المنتج وكذلك لمدة عام بعد ذلك. القيد المستخدمة في المنافسة الصناعية وكذلك المصدر المفتوح. على الرغم من أن المنتج أبقى معظم البيانات على جهازك، كان هناك مكون خادم، لذلك يمكن للعمل، في الواقع، تتبع استخدامك للمنتج.

في عام 2002، احتضن فريق نواة Linux Bitkeker. [Linux Torvalds] كان من بين مؤيدات النظام الجديد. ومع ذلك، فإن المصممين الآخرين (والاحتفال المهتمين مثل [ريتشارد ستالمان] كانوا قلقين بشأن استخدام أداة خاصة لإنشاء مصدر مفتوح. Bitmover – BITMOVER – BITMOVER – BITCHAVE BENTKEBER – أضاف بعض البوابات لضمان أن المصممين الذين يرغبون في استخدام نظام مختلف يمكنهم مدى.

بالنسبة للجزء الأكبر، فإن الأمور التي تهدأت مع المناوشات اللهبية العرضية فقط تنفجر هنا وكذلك هناك. هذا الأمر أعلى حتى عام 2005 عندما كشفت أعمال [McVoy’s]، سيتوقف عن الإصدار المجاني من Bitkeker. ظاهريا السبب كان بسبب فرد إنشاء عميل إضافته ميزات من الإصدار الصناعي إلى واحد مجاني.

أدوات جديدة

نتيجة لذلك، نسج وظيفتان على أنها تأسيس بديل. كان mercurial واحد وكذلك بوابة، بالطبع، كان الآخر. [MCVOY] اتصلت عميلا صناعيا يطالب بعاملهم [براين أونسوليفان] بالتوقف عن المساهمة في الزئبق الذي فعله. بطبيعة الحال، جاء كل من Mercurial بالإضافة إلى جيت إلى الحكم، مع إنهاء جيت كونه ليس فقط نظام إدارة فريق Kernel Team ولكن النظام للحصول على قدر كبير من الأشخاص الآخرين أيضا.

ولادة جيت

[Linus] ابحث عن نظام واحد أكثر قبالة. لم يكن لدى أي وقت في ذلك الوقت أو الميزات التي تناسب فريق التقدم في نواة. لقد صمم GIT من أجل السرعة والبساطة، وكذلك لمنع القيام بأشياء نفسها بالضبط أن CVS (برنامج إدارة الإصدار المنهج) قد فعلت.

ينص النهوض الأولي قد اتخذت بضعة أيام. منذ إصدار الإصدار 1.0 في أواخر عام 2005، أصبح تطبيق البرنامج أكثر من موقع ويب رئيسي بالإضافة إلى أنه انتهى بنظام خيار العديد من المطورين، كل من المصدر المفتوح، وكذلك التجارية.

رجل ريبو

يظهر مخطط التدفق Tricك من بالضبط كيف يتعامل الجيت صفقات رائعة في المطور في وقت واحد: مستودعات أو ريبوس. يحتوي كل مصمم على نسخة عامة من الوظيفة بأكملها (المستودع الإقليمي). في الواقع، إذا كنت لا تهتم بالمشاركة، فأنت لا تتطلب مستودع بعيد. يعد Repo الشخصية لديك وظيفة GIT كاملة مميزة مثل أي شخص آخر، وحتى جهاز التحكم عن بعد، وهو الأرجح على جيثب أو خادم شبكة آخر آخر. يمكنك إجراء التعديلات الخاصة بك في دليل العمل، مرحلة ما “القيام به” مع (الآن)، وكذلك تكريسها على ريبو الخاص بك. عندما يكون الوقت قد حان، يمكنك دفع التعديلات الخاصة بك بقدر ما يتم دمج جهاز التحكم عن بعد مع تغييرات الأشخاص الآخرين.

ومن المثير للاهتمام، GIT لا يعمل فقط على البيانات النصية (سأريك المزيد حول ذلك في الدفعة التالية). ومع ذلك، فإنه يعمل بشكل أفضل على البيانات النصية لأنها حكيمة كافية لإشعار التعديلات في البيانات التي لا تتداخل بالإضافة إلى دمجها تلقائيا. لذلك إذا قمت بإصلاح خطأ بما في ذلك حلقة في بعض الكود بالإضافة إلى تعديل بعض رسائل الخطأ، فإن GIT سوف تضع كل شيء عند دمج التعليمات البرمجية لدينا.

هذا لا يعمل دائما، بالطبع. يؤدي ذلك إلى تعارضات عليك حلها يدويا. ومع ذلك، إلا إذا كان لديك شخصان يلمسان نفس الأجزاء الدقيقة نفسها من التعليمات البرمجية، فإن GIT عادة ما تقوم بمهمة رائعة لحل الفرق. بالطبع، البيانات الثنائية لا تحصل بشكل عام على تلك الفاخرة. لا يمكنك بتحديد أيقونة لرؤية أن شخص الشخص قد وجه شارب عليه وكذلك شخص آخر تحول إلى اللون الأخضر الخلفية. ومع ذلك، من الناحية الفنية، إذا كنت قد تعرف الخوارزمية، فقد تضيفها إلى GIT.

التأكيد

إذا كنت ترغب في تعزيز فهمك لجطهة تتجاوز مجرد استنساخ، فقد تنفق أسوأ من إنفاق 15 دقيقة على هذا البرنامج التعليمي. إذا كنت تفهم بالفعل الأساسيات، فيمكنك اكتشاف بعض الأشياء الجديدة في برنامج تعليمي أكثر تطورا أو فحص الفيديو من الحديث [Linus] المقدمة على GIT A LIND.

في عام 2016، بالمناسبة، كشفت Bitkeker أنهم سيتحركون إلى تصريح Apache الذي، بالطبع، مصدر مفتوح. نوع من السخرية، أليس كذلك؟

الاعتمادات الصورة:

ستيكس الجندي، بواسطة [Sharkey]، CC BY-SA 3.0

[Linus Torvalds] من مجلة Linux، CC BY-SA 3.0

Flowchart by [LBHTW]، CC BY-SA 3.0

Leave a Reply

Your email address will not be published. Required fields are marked *