الخلاصة
- اختار تصميم Git الرسمي للانتقال في 2018 خوارزمية SHA-256 واقترح جدولًا يربط أسماء الكائنات القديمة بالجديدة في الاتجاهين. كان ذلك هدفًا تنفيذيًا لا وصفًا لخدمة متاحة للجميع.
- وصف دليل Git 2.29.0 مستودعات SHA-256 بأنها تجريبية في 2020. ولا يزال دليل Git 2.54.0 يذكر في 2026 غياب التشغيل المتبادل بين مستودعات الصيغتين.
الاسم جزء من محتوى الأرشيف
يمكن إبقاء بايتات ملف كما هي وحساب اسم جديد لها باستعمال دالة أخرى. هذه هي الصورة البسيطة لكائن blob. أما الشجرة في Git فتحفظ أسماء الملفات والأشجار التي تتبعها. ويحفظ الالتزام اسم شجرته وأسماء الالتزامات السابقة، وقد تشير العلامات إلى كائنات أخرى. يشرح تصميم الانتقال النتيجة: تغيير اسم كائن مشار إليه يغير بايتات الكائن الذي يحمل الإشارة؛ ثم يلزم حساب اسم جديد لهذا الأخير أيضًا. تنتشر العملية عبر تاريخ متصل، لا عبر قائمة ملصقات مستقلة.
أسماء SHA-1 القديمة موجودة في المستودعات المحفوظة والخوادم والبرامج التي تتعامل معها. لكي يفهم الطرفان أن اسمًا قديمًا واسمًا جديدًا يعودان إلى الكائن نفسه، يحتاجان إلى سجل مطابقة. دالة التجزئة تحسب بصمة المحتوى؛ لا تملك سجل عناوين العالم القديم. هذا الفرق بين تحسين البصمة وبين نقل شبكة تستخدم تلك البصمات كل يوم.
لذلك اقترحت وثيقة 2018 خريطة أسماء ثنائية الاتجاه. أرادت تحويل المستودعات واحدًا بعد آخر مع إبقاء الاتصال بخوادم SHA-1. وقسمت العمل إلى مراحل، وتركت دعم بروتوكول جديد خارج المرحلة الأولى. رسم الجسر كان عملًا هندسيًا ضروريًا؛ عبور المستودعات عليه كان مسألة أخرى.
ظهر الخيار قبل أن تفتح الطريق
في دليل Git 2.29.0 لعام 2020 ظهر الخيار --object-format=sha256 عند إنشاء مستودع. جاء معه تحذير واضح: الصيغة تجريبية ومخصصة للاختبار، ولا تستطيع عادة مشاركة العمل مع مستودعات SHA-1. إنشاء مستودع محلي بالنظام الجديد لا يعني أن الطرف البعيد وبقية الأدوات باتت تفهمه.
يسجل دليل Git 2.54.0 في 2026 أن sha1 بقي الخيار الافتراضي وأن sha256 متاح للاختيار. ويسجل أيضًا أن التشغيل المتبادل بين الصيغتين غير موجود في الوقت الحاضر. هاتان الجملتان تضعان حدًا فاصلاً بين إتاحة صيغة جديدة وبين إنجاز التبادل مع المخزون القديم.
تخطط وثيقة BreakingChanges لجعل SHA-256 الصيغة الافتراضية للمستودعات الجديدة في Git 3.0. لا تحدد موعد إصدار، وترهن الخطوة بجاهزية المكتبات والتطبيقات وخدمات الاستضافة. ولا توجد فيها خطة حالية للتخلص من صيغة SHA-1. سيتغير باب دخول المستودعات المقبلة، بينما تبقى للأرشيفات القديمة أبوابها. يحتاج الربط بين البابين إلى عمل مستقل.
القرار لا يحدث كل البرامج دفعة واحدة
ناقشت وثيقة التصميم ضعف SHA-1 وتصادم SHAttered في 2017، وحددت سبب اختيار SHA-256. لكن قوة الاسم الجديد لا تمحو الإشارات المخزنة في الكائنات ولا تحدث الخوادم التابعة لأطراف أخرى. يستطيع مطورو Git تحديد الوجهة، بينما يملك كل مضيف ومكتبة وأداة جزءًا من الطريق. الفارق بين مخطط 2018 وتحذير 2026 يقيس ثمن هذه السلطة الموزعة. عندما يصبح الاسم جزءًا من البيانات، لا تنقل البيانات بقرار تسمية فقط.
إحاطة الأعضاء
سياق أعمق للملف الشخصي
سجّل الدخول بمستوى العضوية المناسب لفتح الإحاطة الكاملة وملاحظات المصادر.
للدائرة الاستراتيجية فقط
الدائرة الاستراتيجية
مفتوح لجميع القراء. افتح إحاطات الملف الشخصي بعد الانضمام وتسجيل الدخول.
انضم إلى الدائرة الاستراتيجيةلأعضاء تحالف القيادات فقط
تحالف القيادات
لأصحاب الأصول الفكرية المؤهلين وللإدارة؛ سجّل الدخول للوصول إلى إحاطات التحالف.
انضم إلى تحالف القيادات





