پیشفرض هش جدید Git – به چه معناست؟
پیشفرض پیشنهادی SHA-256 گیت یک مرز سازگاری برای مخازن جدید ایجاد میکند.
پیشفرض پیشنهادی SHA-256 گیت یک مرز سازگاری برای مخازن جدید ایجاد میکند. ما برنامه رسمی، اعتراض اسکات چاکون و استثنای پیشنمایش کاری گیتهاب را بررسی میکنیم، سپس Pi 1.0 و SvelteKit 3 را پوشش میدهیم. حکم: NEEDS REVIEW.
نسخه نوشتاری را بخوانید (انگلیسی) ↗
این ویدیو چه مواردی را پوشش میدهد
- چرا دو مخزن گیت ممکن است از صحبت کردن با هم امتناع کنند؟
- گیت 3 واقعاً چه چیزی را تغییر میدهد؟
- چرا SHA-1 را جایگزین کنیم اگر گیت برخوردها را تشخیص میدهد؟
- بررسی سازگاری محلی ما چه چیزی را نشان داد؟
- چه چیزی پس از خرابی در Pi Durable باقی میماند؟
رونوشت ترجمه شده
ترجمه شده از روایت اصلی انگلیسی. صوت و زیرنویسهای موجود توسط YouTube کنترل میشوند.
چرا دو مخزن گیت ممکن است از صحبت کردن با هم امتناع کنند؟
0:00 شاید فکر کنید ارتقاء گیت، ابزارهای شما را در حال مکالمه نگه میدارد. پیشفرض هش جدید برنامهریزیشده گیت مخازنی را ایجاد میکند که فرمت قدیمی امروز نمیتواند با آنها صحبت کند. در این ویدئو، چرا تغییر؟ چه چیزی خراب میشود؟ چه کسی آماده است؟ یک استثنای کاری در گیتهاب وجود دارد. در انتها به شما نشان خواهم داد که چه چیزی را ثابت میکند. جمعه، دوم اکتبر است و این The Daily Diff است.
0:18 روز پنجشنبه، یکی از بنیانگذاران گیتهاب، تغییر برنامهریزیشده گیت را اشتباهی پرهزینه نامید. Pi یک عامل جدید را ارائه کرد، و SvelteKit یک مهاجرت دیگر را. اسکات چاکون در ساخت گیتهاب کمک کرد و Pro Git را نوشت، بنابراین این شکایت از داخل خانه میآید. این خانه ابزارهای گیت را نیز میفروشد. اول، برنامه واقعی.
گیت 3 واقعاً چه چیزی را تغییر میدهد؟
0:35 گیت 3 مخازن جدید را به صورت پیشفرض به SHA-256 تنظیم میکند، زمانی که کتابخانهها و خدمات میزبانی آماده پشتیبانی از آن باشند. سند رسمی تاریخ انتشار نمیدهد و SHA-1 را پشتیبانی میکند. مخزن موجود شما به طور جادویی فرمت را تغییر نمیدهد وقتی که اجرایی را ارتقاء میدهید. این را قبل از اینکه گروه چت شما یک مهاجرت اضطراری را برنامهریزی کند، به خاطر بسپارید. درام یک پیشفرض پیشنهادی است، و مهلت فعلاً یک تقویم خالی است.
چرا SHA-1 را جایگزین کنیم اگر گیت برخوردها را تشخیص میدهد؟
0:58 چرا اصلاً تغییر کنیم؟ گیت اشیاء را با هش کردن محتوای آنها نامگذاری میکند. فایلها به درختان تغذیه میشوند، و کامیتها به درختان و کامیتهای قبلی اشاره میکنند. این به شما یکپارچگی در طول تاریخ را میدهد. طرح هشینگ را تغییر دهید و نام اشیاء نیز تغییر میکنند، از جمله ارجاعات ذخیره شده در داخل اشیاء دیگر. چاکون به لینوس توروالدز، خالق گیت، اشاره میکند، با این استدلال که توزیع
1:17 قابل اعتماد اهمیت دارد. این یک موضع تاریخی است، و لینوس SHA-1 را در سال دو هزار و پنج انتخاب کرد. وضعیت امنیتی از آن زمان تغییر کرده است. محققان برخورد SHA-1 را در سال دو هزار و هفده نشان دادند، و بعداً حمله انتخاب پیشوند را علیه گواهیهای هویت PGP نشان دادند. گیت مدرن حملات برخورد شناخته شده را با SHA-1 تقویت شده تشخیص میدهد. نگهدارندگان آن میخواهند در برابر حملات آینده نیز محافظت شوند، که یک چیز منطقی برای خواستن از امضاها است.
1:41 چاکون فکر میکند صورتحساب اکوسیستم امنیت بسیار کمی را میخرد. او پیشنهاد میکند یک مجموع کنترلی قوی جداگانه از محتوای درخت را امضا کند، در حالی که آدرسدهی شیء امروزی را در زیر نگه میدارد. چه چیزی خراب میشود؟ من هر دو فرمت را به صورت محلی ایجاد کردم و همان فایل کوچک را هش کردم.
بررسی سازگاری محلی ما چه چیزی را نشان داد؟
1:54 یک نام شیء چهل کاراکتر هگزا، دیگری شصت و چهار کاراکتر دارد. سپس سعی کردم بین آنها واکشی کنم. گیت نصب شده من آن را با الگوریتمهای ناسازگار رد کرد، دقیقاً همان شکاف سازگاری که در دفترچه راهنمای رسمی فعلی توضیح داده شده است. این از گیت نصب شده قدیمی من استفاده کرد، بنابراین در مورد مرز امروزی به ما میگوید. نامیدن آن به عنوان آزمایشی از گیت 3 منتشر نشده، حسابداری خلاقانه خواهد بود. کار مهاجرت به اسکریپتهایی میرسد که طول یک هش را فرض میکنند، و سیستمهایی که به نامهای شیء لینک میدهند.
2:19 بازنگری یک تاریخچه نیاز به نگاشتی بین آن هویتها دارد. طراحی انتقال گیت شامل آن نگاشت و مدیریت امضا است. آمادگی پیادهسازی مهم است، زیرا یک سند طراحی کتابخانه پنهان شده در ابزار توسعه دهنده مورد علاقه شما را ارتقاء نمیدهد. این هزینه انسانی در استدلال چاکون است. هر نگهدارنده ابزار یک کار سازگاری دیگر را دریافت میکند، در حالی که کاربران کشف میکنند که کنترل نسخه آنها اکنون به کنترل نسخه نیاز دارد. فعلاً، قبل از انتخاب فرمت جدید برای یک
2:44 پروژه، میزبان و ابزارهای خود را آزمایش کنید. تیمهای موجود میتوانند فرمت فعلی خود را نگه دارند تا زمانی که آن اکوسیستم به روز شود. در همین حال، Pi به یک نقطه صفر رسید.
چه چیزی پس از خرابی در Pi Durable باقی میماند؟
2:51 این یک مهار عامل کدنویسی از Earendil است، با پشتیبانی بومی MCP از طریق Codemode و ابزارهایی که در صورت نیاز بارگذاری میشوند. تیم مینیمالیسم را هدف مینامد. اگر تنظیمات عامل شما قبلاً شبیه یک دولت کوچک است، نگه داشتن ابزارها از اعلان تا زمانی که مورد نیاز باشند، شبیه اصلاحات اداری به نظر میرسد. Pi Durable، یک چارچوب آزمایشی جداگانه نیز منتشر شد. وظایف نقاط بازرسی را ذخیره میکنند تا یک فرآیند راهاندازی مجدد بتواند کار ناتمام را از ذخیرهسازی پایدار از سر بگیرد. جزئیات حیاتی، بازپخش ابزار است.
3:16 یک ابزار که توسط یک خرابی قطع شده است، تنها زمانی دوباره اجرا میشود که اعلام کند ایمن است. در غیر این صورت به مدل گفته میشود که قطع شده است. این یک مرز مفید است وقتی یک ابزار میتواند پول خرج کند. من میخواهم دستیار لیست خرید من را به خاطر بسپارد بدون اینکه با دو بار خرید آن، یک خرابی را جشن بگیرد.
SvelteKit 3 چه چیزی را برای شما مهاجرت میکند؟
3:30 SvelteKit 3 نیز روز پنجشنبه عرضه شد، پیکربندی را به Vite منتقل کرد و lib$ را با lib# جایگزین کرد، با استفاده از واردات زیرمسیر بسته استاندارد. دستور مهاجرت آنچه را که میتواند بازنویسی میکند و برای بقیه یک لیست کارهای باقی مانده میگذارد. ربات شما میتواند کمک کند، و diff شما هنوز ارزش خواندن را دارد. این اطلاعیه حتی دوستان ربات شما را برای کارهای باقی مانده استخدام میکند. ما به جایی میرسیم که یک ارتقاء چارچوب، مشق شب و یک معلم جایگزین پیشنهادی را ارائه میدهد. و توابع راه دور هنوز به Async Svelte آزمایشی نیاز دارند.
3:56 یک شماره نسخه اصلی اطمینانبخش است، اما ویژگیهای فردی برچسبهای پختگی خاص خود را دارند. مواردی را که واقعاً استفاده میکنید بررسی کنید.
استثنای کاری گیتهاب چه چیزی را ثابت میکند؟
4:03 پس چه کسی برای فرمت جدید گیت آماده است؟ این استثنا اینجاست. یک مخزن عمومی گیتهاب حاوی سخنرانی برایان کارلسون قبلاً یک نام شیء کامل SHA-256 را برمیگرداند. من مستقیماً راه دور عمومی را بررسی کردم. اسلایدهای سخنرانی پشتیبانی را یک پیشنمایش خصوصی مینامند و میگویند ایجاد مخزن هنوز در حال آمدن است. پیشرفت واقعی پشت اتاق انتظار وجود دارد. این ثابت میکند گیتهاب میتواند این مخزن پیشنمایش را ارائه دهد.
4:24 این به ما هیچ تضمینی نمیدهد که ایجاد پروژه معمولی یا همه یکپارچهسازیهای شما آماده هستند. این استثنا یک مرز مجوز دارد. اگر ترجیح میدهید این را بخوانید تا اینکه من آن را بگویم، diff هر صبح به صورت رایگان در thedailydiff.dev، لینک زیر، به صندوق ورودی شما میرسد. پس حکم امروز NEEDS REVIEW است.
چرا حکم من به کل زنجیره ابزار بستگی دارد؟
4:40 من گزینه هش قویتر را حفظ میکنم و قبل از تغییر پیشفرضها، کل زنجیره ابزار را آزمایش میکنم. سازگاری بخشی از ارائه بهبود امنیتی است. و این برای امروز diff است. من Niko از Axrisi هستم. مسئولانه ادغام کنید.
منابع
- Chaconblog.gitbutler.com
- Git's official plangit-scm.com
- Current interoperabilitygit-scm.com
- Transition designgit-scm.com
- Independent collision researchsha-mbles.github.io
- GitHub preview repositorygithub.com
- Pi 1.0earendil.com
- Pi Durableearendil.com
- SvelteKit 3svelte.dev
- HN discussionnews.ycombinator.com



