Новы хэш Git па змаўчанні – што гэта значыць
Прапанаваны Git па змаўчанні SHA-256 стварае мяжу сумяшчальнасці для новых сховішчаў.
Прапанаваны Git па змаўчанні SHA-256 стварае мяжу сумяшчальнасці для новых сховішчаў. Мы правяраем афіцыйны план, пярэчанне Скота Чэйкана і працоўнае выключэнне папярэдняга прагляду GitHub, затым разглядаем Pi 1.0 і SvelteKit 3. Вердыкт: NEEDS REVIEW.
Чытаць пісьмовае выданне (англійская) ↗
Што ахоплівае гэта відэа
- Чаму два сховішчы Git могуць адмовіцца размаўляць?
- Што насамрэч змяняе Git 3?
- Навошта замяняць SHA-1, калі Git выяўляе калізіі?
- Што паказала наша лакальная праверка сумяшчальнасці?
- Што выжывае пасля збою ў Pi Durable?
Перакладзеная стэнаграма
Перакладзена з арыгінальнай англійскай агучкі. Даступнае аўдыя і субтытры кантралююцца YouTube.
Чаму два сховішчы Git могуць адмовіцца размаўляць?
0:00 Можна было б падумаць, што абнаўленне Git падтрымлівае вашыя інструменты ў працоўным стане. Запланаваны Git новы хэш па змаўчанні стварае сховішчы, якія сённяшні стары фармат не можа выкарыстоўваць. У гэтым відэа: навошта змены? Што ламаецца? Хто гатовы? На GitHub ужо ёсць працоўнае выключэнне. Я пакажу вам, што гэта даказвае ў канцы. Сёння пятніца, другое кастрычніка, і гэта The Daily Diff.
0:18 У чацвер сузаснавальнік GitHub назваў запланаваную змену Git дорагай памылкай. Pi паставіў новы каркас агента, а SvelteKit паставіў яшчэ адну міграцыю. Скот Чэйкан дапамагаў ствараць GitHub і напісаў Pro Git, таму гэтая скарга паступае знутры. Кампанія таксама прадае інструменты Git. Спачатку, фактычны план.
Што насамрэч змяняе Git 3?
0:35 Git трэці па змаўчанні будзе выкарыстоўваць SHA-256 для новых сховішчаў, як толькі бібліятэкі і хостынг-сэрвісы будуць гатовыя яго падтрымліваць. Афіцыйны дакумент не дае даты выпуску і захоўвае падтрымку SHA-1. Ваша існуючае сховішча не мяняе фармат магічным чынам, калі вы абнаўляеце выканальны файл. Пра гэта варта памятаць, перш чым ваш групавы чат заплануе экстраную міграцыю. Драма — гэта прапанаваны стандарт, і крайні тэрмін у цяперашні час — пусты каляндар.
Навошта замяняць SHA-1, калі Git выяўляе калізіі?
0:58 Навошта наогул мяняць? Git называе аб'екты, хэшуючы іх змест. Файлы паступаюць у дрэвы, а коміты спасылаюцца на дрэвы і ранейшыя коміты. Гэта забяспечвае цэласнасць на працягу ўсёй гісторыі. Зменіце схему хэшавання, і імёны аб'ектаў таксама зменяцца, уключаючы спасылкі, якія захоўваюцца ў іншых аб'ектах. Чэйкан звяртаецца да Лінуса Торвальдса, стваральніка Git, сцвярджаючы, што даверанае
1:17 распаўсюджванне мае значэнне. Гэта гістарычная пазіцыя, і Лінус выбраў SHA-1 яшчэ у дзве тысячы пятым годзе. Сітуацыя з бяспекай змянілася з таго часу. Даследчыкі прадэманстравалі калізіі SHA-1 у дзве тысячы семнаццатым годзе, а пазней прадэманстравалі атаку з выбраным прэфіксам супраць сертыфікатаў ідэнтычнасці PGP. Сучасны Git выяўляе вядомыя атакі калізій з дапамогай узмоцненага SHA-1. Яго суправаджальнікі хочуць абароны і ад будучых атак, што з'яўляецца разумным жаданнем ад подпісаў.
1:41 Чэйкан лічыць, што рахунак экасістэмы купляе занадта мала бяспекі. Ён прапануе падпісваць асобную моцную кантрольную суму зместу дрэва, пры гэтым захоўваючы сённяшнюю адрасацыю аб'ектаў знізу. Што ламаецца? Я стварыў абодва фарматы лакальна і хэшаваў той жа маленькі файл.
Што паказала наша лакальная праверка сумяшчальнасці?
1:54 Адно імя аб'екта мае сорак шаснаццатковых сімвалаў, другое — шэсцьдзесят чатыры. Затым я паспрабаваў выцягнуць паміж імі. Мой усталяваны Git адхіліў гэта з неадпаведнымі алгарытмамі, дакладна тая прабел сумяшчальнасці, апісаны ў бягучым афіцыйным кіраўніцтве. Гэта выкарыстоўвала мой стары ўсталяваны Git, таму гэта расказвае нам пра сённяшнюю мяжу. Называць гэта тэстам нявыпушчанага Git трэцяга было б творчым улікам. Праца па міграцыі дасягае сцэнарыяў, якія мяркуюць даўжыню хэша, і сістэм, якія спасылаюцца на імёны аб'ектаў.
2:19 Перахэшаванне гісторыі патрабуе адлюстравання паміж гэтымі ідэнтыфікатарамі. Дызайн пераходу Git уключае гэтае адлюстраванне і апрацоўку подпісаў. Гатоўнасць рэалізацыі мае значэнне, таму што дызайнерскі дакумент не абнаўляе бібліятэку, схаваную ў вашым любімым інструменце распрацоўніка. Гэта чалавечы кошт у аргуменце Чэйкана. Кожны суправаджальнік інструмента атрымлівае яшчэ адну задачу па сумяшчальнасці, у той час як карыстальнікі выяўляюць, што іх сістэма кантролю версій цяпер патрабуе кантролю версій. Пакуль што праверце свой хост і інструменты, перш чым выбіраць новы фармат для
2:44 праекта. Існуючыя каманды могуць захоўваць свой бягучы фармат, пакуль гэтая экасістэма даганяе. Між тым, Pi дасягнуў адзін пункт нуль.
Што выжывае пасля збою ў Pi Durable?
2:51 Гэта каркас кодавання агента ад Earendil, з убудаванай падтрымкай MCP праз Codemode і інструментамі, якія загружаюцца па меры неабходнасці. Каманда называе мінімалізм галоўным. Калі ваша налада агента ўжо нагадвае невялікі ўрад, утрыманне інструментаў ад падказкі, пакуль яны не спатрэбяцца, гучыць як адміністрацыйная рэформа. Таксама быў выпушчаны Pi Durable, асобны эксперыментальны фреймворк. Задачы захоўваюць кантрольныя пункты, так што перазапушчаны працэс можа працягнуць незавершаную працу з пастаяннага сховішча. Вырашальная дэталь — перагульванне інструмента.
3:16 Інструмент, перапынены збоем, перазапускаецца толькі тады, калі ён аб'яўляе гэта бяспечным. У адваротным выпадку мадэль атрымлівае паведамленне, што яна была перапыненая. Гэта карысная мяжа, калі інструмент можа выдаткаваць грошы. Я хачу, каб памочнік памятаў мой спіс пакупак, не святкуючы збой купляючы яго двойчы.
Што SvelteKit 3 мігруе для вас?
3:30 SvelteKit трэці таксама з'явіўся ў чацвер, пераносячы канфігурацыю ў Vite і замяняючы долар lib на хэш lib, выкарыстоўваючы стандартныя падпуці імпарту пакетаў. Каманда міграцыі перазапісвае тое, што можа, і пакідае спіс спраў для астатняга. Ваш робат можа дапамагчы, і ваш дыф усё яшчэ варты чытання. Аб'ява нават набірае вашых сяброў-робатаў для рэшткаў. Мы дасягаем моманту, калі абнаўленне фреймворка адпраўляе хатняе заданне і прапанаванага замяняючага настаўніка. І аддаленыя функцыі ўсё яшчэ патрабуюць эксперыментальнага Async Svelte.
3:56 Асноўны нумар версіі адчуваецца супакойваючым, але асобныя функцыі маюць свае ўласныя этыкеткі сталасці. Праверце тыя, якія вы насамрэч выкарыстоўваеце.
Што даказвае працоўнае выключэнне GitHub?
4:03 Такім чынам, хто гатовы да новага фармату Git? Вось гэтае выключэнне. Публічнае сховішча GitHub, якое змяшчае выступ Брайана Карлсана, ужо вяртае поўнае імя аб'екта SHA-256. Я праверыў публічны аддалены рэсурс непасрэдна. Слайды прэзентацыі называюць падтрымку прыватным папярэднім праглядам і кажуць, што стварэнне сховішча усё яшчэ надыходзіць. За залай чакання ёсць рэальны прагрэс. Гэта даказвае, што GitHub можа абслугоўваць гэта сховішча папярэдняга прагляду.
4:24 Гэта дае нам нулявую гарантыю, што звычайнае стварэнне праектаў або ўсе вашы інтэграцыі гатовыя. Выключэнне мае мяжу дазволу. Калі вы аддаеце перавагу чытаць гэта, чым чуць, як я гэта кажу, дыф прыходзіць у вашу паштовую скрыню кожную раніцу, бясплатна на thedailydiff.dev, спасылка ніжэй. Такім чынам, сённяшні вердыкт — NEEDS REVIEW.
Чаму мой вердыкт залежыць ад усяго інструментара?
4:40 Я б захаваў варыянт мацнейшага хэша і праверыў увесь інструментар, перш чым мяняць стандарты. Сумяшчальнасць з'яўляецца часткай пастаўкі паляпшэння бяспекі. І гэта дыф на сёння. Я Ніка з 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



