قم بإدراج الإصدار الجديد من Git 2.25.0 ، وتعرف على تحسيناته وتغييراته

git2.25

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

مقارنة بالإصدار السابق ، النسخة الجديدة اعتمدت 583 من التغييرات المعدة بمشاركة 84 مطورًا ، شارك 32 منهم في التطوير لأول مرة.

ما الجديد في جيت 2.25.0؟

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

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

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

git clone --filter=blob:none --no-checkout /your/repository/here

خاص --filter: يسمح لك بإخبار الخادم أنك تقوم بالاستنساخ من الكائنات التي تختارها. (في مثالنا ، نطلب من الخادم تجنب إرسال نقاط نقطية إلينا ، ولكن يمكنك استخدام العديد من التصفيات الممكنة). 

بعد ذلك ، نحتاج إلى إخبار Git أنه يمكنه تخطي التحقق من المستودع بعد تلقي استجابة من الخادم باستخدام --no-checkout (بينما يحاول Git التحقق من المحتوى ، سيلاحظ أنه يفتقد كائنات وسيحاول طلبها من الخادم. 

أيضا يتم تضمين الأمر الجديد أيضًا git sparse-checkout qإنه يبسط العمل بشكل كبير ويقلل من عملية التنظيم من الوظيفة مع مستودع غير مكتمل.

القيادة sparse-checkout يسمح بتعيين قائمة المسارات، دون التكوين اليدوي وكذلك عرض قائمة المسار الحالية وتمكين أو تعطيل السحب الجزئي.

لتحسين العمل مع مستودعات كبيرة جدًا وقوائم القوالب ، إنه مقترح التكوين "git config core.sparseCheckoutCone" الذي يقيد القوالب الصالحة (بدلاً من قوالب gitignore التعسفية ، يمكنك تحديد جميع المسارات وما إذا كنت تريد استخراج جميع الملفات في دليل فرعي معين.)

على سبيل المثال إذا كان المستودع الكبير يحتوي على دليل "A / B / C" ويتركز كل العمل في الدليل الفرعي "C" ، عندما يكون الوضع sparseCheckoutCone مفعل ، الأمر «git sparse-checkout set A/B/Cسيستخرج »كامل محتويات« C »، لكن من« أ »و« ب »لن يستخرج إلا الأجزاء الضرورية للعمل مع« ج ».

En "git add", "git commit", "git reset"  أوامر أخرى ، تم إضافة خيار جديد: --pathspec-from-file"، ماذا يسمح بتحميل قائمة المسارات من ملف أو دفق الإدخال، بدلاً من سردها في سطر الأوامر.

تم اقتراح تنفيذ أولي للأمر المعاد تصميمه git add -i، والذي يسمح لك بإضافة محتوى معدل بشكل تفاعلي ، إعادة كتابته من Perl إلى C. مراجعة مماثلة للأمر git add -p قيد التنفيذ.

القيادة "git log --graph» تم إعادة بنائه ، لتشكيل صورة ASCII للرسم البياني مع تاريخ التغييرات في المستودع. سمح لنا التقديم بتحسين المخرجات وتبسيطها بشكل كبير دون تشويه بنية القصة ، والتي ، على سبيل المثال ، حلت مشكلة سحب الصورة خارج عرض خط النهاية.

أثناء تحسين إمكانية قراءة الرسائل المصححة المرسلة إلى القوائم البريدية ، فإن الخيار "git format-patch --cover-from-description subject"، عند تحديد ماذا ، كموضوع خطاب الغلاف لمجموعة التصحيح ، يتم استخدام الفقرة الأولى من نص وصف الفرع.

Si تريد معرفة المزيد عن هذا الإطلاق، يمكنك التحقق من الإعلان الرسمي في الرابط التالي. 


اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.