+− THE DAILY DIFFdev & AI news
NEEDS REVIEW

Lalai Hash Baharu Git – Apa Maksudnya

Lalai SHA-256 yang dicadangkan oleh Git mencipta sempadan keserasian untuk repositori baharu.

Lalai SHA-256 yang dicadangkan oleh Git mencipta sempadan keserasian untuk repositori baharu. Kami menyemak pelan rasmi, bantahan Scott Chacon dan pengecualian pratonton GitHub yang berfungsi, kemudian meliputi Pi 1.0 dan SvelteKit 3. Keputusan: NEEDS REVIEW.

Baca edisi bertulis (Bahasa Inggeris) ↗

Apa yang diliputi video ini

  • Mengapa dua repositori Git boleh enggan berkomunikasi?
  • Apakah yang sebenarnya diubah oleh Git 3?
  • Mengapa menggantikan SHA-1 jika Git mengesan perlanggaran?
  • Apakah yang ditunjukkan oleh semakan keserasian tempatan kami?
  • Apakah yang terselamat daripada ranap dalam Pi Durable?

Transkrip terjemahan

Diterjemahkan daripada penceritaan asal Bahasa Inggeris. Audio dan kapsyen yang tersedia dikawal oleh YouTube.

Mengapa dua repositori Git boleh enggan berkomunikasi?

0:00 Anda mungkin fikir menaik taraf Git akan memastikan alat anda sentiasa berhubung. Lalai hash baharu yang dirancang oleh Git mencipta repositori yang menggunakan format lama hari ini tidak dapat berhubung. Dalam video ini, mengapa perlu berubah? Apa yang rosak? Siapa yang bersedia? Sudah ada pengecualian berfungsi di GitHub. Saya akan tunjukkan apa yang ia buktikan pada akhirnya. Hari ini Jumaat, dua Oktober, dan ini adalah The Daily Diff.

0:18 Pada hari Khamis, seorang pengasas bersama GitHub memanggil perubahan yang dirancang oleh Git sebagai kesilapan yang mahal. Pi menghantar agen baharu, dan SvelteKit menghantar migrasi lain. Scott Chacon membantu membina GitHub dan menulis Pro Git, jadi aduan ini datang dari dalam rumah. Rumah itu juga menjual alat Git. Pertama, rancangan sebenar.

Apakah yang sebenarnya diubah oleh Git 3?

0:35 Git tiga akan menetapkan repositori baharu secara lalai kepada SHA dua lima enam, setelah perpustakaan dan perkhidmatan pengehosan bersedia untuk menyokongnya. Dokumen rasmi tidak memberikan tarikh keluaran dan terus menyokong SHA satu. Repositori sedia ada anda tidak berubah format secara ajaib apabila anda menaik taraf fail boleh laksana. Itu perlu diingat sebelum sembang kumpulan anda menjadualkan migrasi kecemasan. Drama ini adalah cadangan lalai, dan tarikh akhir pada masa ini adalah kalendar kosong.

Mengapa menggantikan SHA-1 jika Git mengesan perlanggaran?

0:58 Mengapa berubah sama sekali? Git menamakan objek dengan mengehash kandungannya. Fail dimasukkan ke dalam pepohon, dan komit merujuk kepada pepohon dan komit terdahulu. Itu memberikan anda integriti merentasi sejarah. Ubah skema hashing dan nama objek juga berubah, termasuk rujukan yang disimpan di dalam objek lain. Chacon kembali kepada Linus Torvalds, pencipta Git, dengan alasan bahawa

1:17 pengedaran yang dipercayai penting. Itu adalah kedudukan sejarah, dan Linus memilih SHA satu pada tahun dua ribu lima. Kes keselamatan telah berubah sejak itu. Penyelidik menunjukkan perlanggaran SHA satu pada tahun dua ribu tujuh belas, dan kemudian menunjukkan serangan awalan terpilih terhadap sijil identiti PGP. Git moden mengesan serangan perlanggaran yang diketahui dengan SHA satu yang diperkukuh. Penyelenggaranya mahukan perlindungan terhadap serangan masa depan juga, yang merupakan perkara yang wajar untuk diminta daripada tandatangan.

1:41 Chacon berpendapat bil ekosistem membeli terlalu sedikit keselamatan. Dia mencadangkan menandatangani jumlah semak kuat yang berasingan bagi kandungan pepohon, sambil mengekalkan pengalamatan objek hari ini di bawahnya. Apa yang rosak? Saya mencipta kedua-dua format secara tempatan dan mengehash fail kecil yang sama.

Apakah yang ditunjukkan oleh semakan keserasian tempatan kami?

1:54 Satu nama objek mempunyai empat puluh aksara heksadesimal, yang lain mempunyai enam puluh empat. Kemudian saya cuba mengambil di antara mereka. Git yang saya pasang menolaknya dengan algoritma yang tidak sepadan, tepat jurang keserasian yang diterangkan dalam manual rasmi semasa. Ini menggunakan Git lama saya yang dipasang, jadi ia memberitahu kami tentang sempadan hari ini. Memanggilnya ujian Git tiga yang belum dikeluarkan adalah perakaunan kreatif. Kerja migrasi mencapai skrip yang mengandaikan panjang hash, dan sistem yang memaut ke nama objek.

2:19 Mengehash semula sejarah memerlukan pemetaan antara identiti tersebut. Reka bentuk peralihan Git termasuk pemetaan dan pengendalian tandatangan tersebut. Kesediaan pelaksanaan penting, kerana dokumen reka bentuk tidak menaik taraf perpustakaan yang tersembunyi di dalam alat pembangun kegemaran anda. Itulah kos manusia dalam hujah Chacon. Setiap penyelenggara alat mendapat satu lagi tugas keserasian, sementara pengguna mendapati kawalan versi mereka kini memerlukan kawalan versi. Buat masa ini, uji hos dan alatan anda sebelum memilih format baharu untuk

2:44 projek. Pasukan sedia ada boleh mengekalkan format semasa mereka sementara ekosistem itu mengejar. Sementara itu, Pi mencapai satu titik sifar.

Apakah yang terselamat daripada ranap dalam Pi Durable?

2:51 Ia adalah peranti ejen pengekodan dari Earendil, dengan sokongan MCP asli melalui Codemode dan alatan dimuat apabila diperlukan. Pasukan itu memanggil minimalisme sebagai intinya. Jika persediaan ejen anda sudah menyerupai kerajaan kecil, menjauhkan alatan daripada arahan sehingga diperlukan kedengaran seperti reformasi pentadbiran. Ia juga mengeluarkan Pi Durable, rangka kerja eksperimen yang berasingan. Tugas menyimpan titik semak supaya proses yang dimulakan semula dapat meneruskan kerja yang belum selesai dari storan berterusan. Butiran penting ialah ulang main alat.

3:16 Alat yang terganggu oleh ranap hanya akan dijalankan semula apabila ia mengisytiharkan bahawa ia selamat. Jika tidak, model diberitahu ia terganggu. Itu adalah sempadan yang berguna apabila alat boleh membelanjakan wang. Saya mahu pembantu mengingati senarai membeli-belah saya tanpa meraikan ranap dengan membelinya dua kali.

Apakah yang SvelteKit 3 migrasikan untuk anda?

3:30 SvelteKit tiga juga dilancarkan pada Khamis, memindahkan konfigurasi ke Vite dan menggantikan dolar lib dengan hash lib, menggunakan import sublaluan pakej standard. Perintah migrasi menulis semula apa yang boleh dan meninggalkan senarai tugasan untuk selebihnya. Robot anda boleh membantu, dan diff anda masih patut dibaca. Pengumuman itu bahkan merekrut rakan robot anda untuk sisa-sisa. Kami mencapai titik di mana naik taraf rangka kerja menghantar kerja rumah dan guru ganti yang dicadangkan. Dan fungsi jauh masih memerlukan Async Svelte eksperimen.

3:56 Nombor versi utama terasa melegakan, tetapi ciri-ciri individu membawa label kematangan tersendiri. Semak yang anda sebenarnya gunakan.

Apakah yang dibuktikan oleh pengecualian berfungsi GitHub?

4:03 Jadi siapa yang bersedia untuk format baharu Git? Ini pengecualian itu. Repositori GitHub awam yang mengandungi ceramah Brian Carlson sudah mengembalikan nama objek SHA dua lima enam penuh. Saya menyemak jauh awam secara langsung. Slaid ceramah memanggil sokongan sebagai pratonton persendirian dan mengatakan penciptaan repositori masih akan datang. Ada kemajuan sebenar di belakang bilik menunggu. Itu membuktikan GitHub boleh menghidangkan repositori pratonton ini.

4:24 Ia tidak memberikan jaminan bahawa penciptaan projek biasa atau semua integrasi anda sudah siap. Pengecualian itu mempunyai sempadan kebenaran. Jika anda lebih suka membaca ini daripada mendengar saya mengatakannya, diff tiba di peti masuk anda setiap pagi, percuma di the daily diff dot dev, pautan di bawah. Jadi keputusan hari ini adalah NEEDS REVIEW.

Mengapa keputusan saya bergantung kepada seluruh rantaian alat?

4:40 Saya akan mengekalkan pilihan hash yang lebih kuat, dan menguji keseluruhan rantaian alat sebelum menukar lalai. Keserasian adalah sebahagian daripada penghantaran peningkatan keselamatan. Dan itulah perbezaan untuk hari ini. Saya Niko dari Axrisi. Gabungkan dengan bertanggungjawab.

Sumber

  1. Chaconblog.gitbutler.com
  2. Git's official plangit-scm.com
  3. Current interoperabilitygit-scm.com
  4. Transition designgit-scm.com
  5. Independent collision researchsha-mbles.github.io
  6. GitHub preview repositorygithub.com
  7. Pi 1.0earendil.com
  8. Pi Durableearendil.com
  9. SvelteKit 3svelte.dev
  10. HN discussionnews.ycombinator.com

Video berkaitan