Git 2.29.0 нь SHA-256, сайжруулалт болон бусад туршилтын дэмжлэгтэйгээр ирдэг

Git бол хувилбарыг хянах хамгийн түгээмэл системүүдийн нэг юм. салаалж, нэгтгэхэд суурилсан уян хатан шугаман бус хөгжүүлэлтийн хэрэгслээр хангах найдвартай, өндөр гүйцэтгэлтэй. Түүхийн бүрэн бүтэн байдал, өөрчлөлтийг "буцааж" эсэргүүцэх баталгааг хангахын тулд өмнөх бүх түүхийг далдуур хэшлэх үйлдлийг ашиглалт бүрт ашигладаг тул хувь хүний ​​хаяг, дижитал гарын үсгээр баталгаажуулах боломжтой.

Саяхан түүний шинэ хувилбар "Git 2.29.0" зарлагдлаа болон өмнөх хувилбартай харьцуулахад, 627 өөрчлөлтийг шинэчилсэн найруулгад батлав, 89 хөгжүүлэгчдийн оролцоотойгоор бэлтгэгдсэн бөгөөд үүнээс 24 нь анх удаа боловсруулалтанд оролцсон.

Git 2.29.0 Шинэ гол шинж чанарууд

Энэхүү шинэ хувилбарт SHA-256 хэшийн алгоритмыг ашиглах туршилтын хувилбар орно буулгасан SHA-1-ийн оронд агуулахад объект бичихдээ. Хэш нь Git доторх объект бүрийн агуулгаас үүсдэг бөгөөд энэ нь түүний өвөрмөц танигч юм. Объектын өгөгдөл эсвэл толгойн аливаа өөрчлөлт нь танигчийг өөрчлөхөд хүргэдэг. Хэш алгоритм дахь мөргөлдөөнүүд нь үүссэн хэшээр хоёр өөр өгөгдлийн багц үүсгэхийг онолын хувьд үгүйсгэхгүй.

Харамсалтай нь SHA-1 алгоритм нь хиймэл мөргөлдөөн үүсэхэд тэсвэртэй биш болсонГэхдээ SHA-1 мөргөлдөөнийг зохицуулах замаар Git дахь объектыг орлуулах бодит довтолгоонуудыг хийхийн тулд тусгаарлагдсан объектыг хүчингүй болгохын тулд хүчингүй болгосон объект аль хэдийн мөргөлдөх хэв шинжийг агуулсан байх шаардлагатай. дурын блокыг солих боломжгүй.

Мөргөлдөөн бүрт тооцоолох асар их нөөц шаардагддаг тул аль хэдийн тооцоолсон загваруудыг мэддэг болсон мөргөлдөхөд хүргэдэг бөгөөд үүнээс өмнө Git дээр объект дээр ашиглах оролдлогын шалгалтыг нэмж оруулсан.

Хөгжлийн энэ үе шатанд та зөвхөн SHA-1 ба SHA-256-ийн аль нэгийг нь сонгох боломжтой боловч одоогоор та өөр өөр хэшийг нэгэн зэрэг агуулахад нэгтгэж чадахгүй. Мөн одоогийн байдлаар GitHub-ийг оруулаад Git үйлчилгээ үзүүлэгч SHA-256 хэш бүхий репозиторийг дэмждэггүй. Цаашид зөөврийн шинж чанаруудыг нэмж оруулахаар төлөвлөж байна.

Энэ шинэ хувилбар дахь өөр нэг өөрчлөлт нь тушаалд байна "Git fetch" ба "git push" хүмүүст холбоосын онцгой шинж чанарыг дэмжихэд нэмэр болно (refspec), орон нутгийн болон гадаад репозитор дахь салбаруудын хоорондох уялдуулах холболтын эрхийг өргөжүүлдэг. Лавлах үзүүлэлтийг хасах нь зөвхөн сонгохоос гадна зарим салбарыг зураглалаас хасах шаардлагатай тохиолдолд ашигтай байж болох юм. Жишээлбэл, нэг "ref / heads / ref-to-хасах" -аас бусад бүх "refs / heads / *" салбарыг шалгах шаардлагатай байсан бол эхлээд салбар бүрийг багтаасан бүрэн жагсаалтыг зааж өгөх шаардлагатай байв.

"Git for-each-ref" дээр шинэ талбарууд нэмэгдэв объектын нэр, төрөл, id-ээс гадна "-format" сонголтоор зааж өгч болно. Жишээлбэл, нэмсэн талбарын агуулга: хэмжээ, сэдэв: ариутгах, өөрчлөх: богино объектын таних тэмдгийг харуулах богино. Түүнчлэн холбоосыг шүүхийн тулд олон "-мерген" ба "-холбоогүй" аргумент зааж өгөхийг зөвшөөрдөг.

"Git merge" ажиллагааны явцад зөрчил гарсан тохиолдолд, commit мессежийн толгойг илүү тодорхой салгах үүднээс хаалтанд орууллаа Git оношлогооны мессежүүдийн баталгаажуулалтын мэдээлэл.

"Merge.renormalize" гэсэн шинэ тохиргоо нэмэгдсэн бөгөөд тохируулах үед гурван талт хослолын үе шат бүрт гарах, гарах үйлдлийг гүйцэтгэнэ.

Git холбооны протоколын хоёрдахь хувилбарыг буцааж эргүүлсэн бөгөөд 2.27 хувилбар дээр идэвхгүйжүүлсэн бөгөөд үйлчлүүлэгч алсаас Git сервер рүү холбогдоход ашигладаг. Тогтвортой байдлын асуудал үүсгэдэг алдааг оношилж зассан.

"–First-parent" сонголтыг "git bisect" тушаалд нэмсэн, Que регрессийн өөрчлөлт гарсан шинэчлэлтийг тодорхойлоход ашигладаг, мэдэгдэж буй ажлын тойм ба асуудал гарсан тойм хооронд дамжих үүрэг хариуцлагын сонголтыг өөрчлөх. Хэрэв та "–first-parent" гэж зааж өгсөн бол зөвхөн нэгтгэсэн салбар дээрх амлалтуудыг тоолох бөгөөд нэгтгэх амлалтыг өөрөө үл тоомсорлодог.

"Git index-pack" дотоод тушаалын үр ашгийг дээшлүүлэв "Git push" эсвэл "git fetch" -ийг гүйцэтгэхэд олон цөмт систем дээр индексийн багцыг зэрэгцүүлэх үед ашигладаг.

"Merge.suppressDest" тохиргоог нэмж оруулсан бөгөөд энэ нь салбаруудыг нэгтгэхэд гарсан "дээш $ урсгалд $ dest" -д "$ dest" гэсэн хэллэгийг нэмж оруулахад хяналт тавьдаг (өмнө нь "dest" -д байсан) анхдагч байдлаар үндсэн салбарыг харуулах).

"Хувь нэмэр / mw-to-git" арын арын сул талыг зассан (анхдагчаар баригдаагүй) MediaWiki дээрээс өгөгдлийг түлхэж авах. Асуудал нь халдагчийн хяналтанд байсан MediaWiki жишээнд хандах үед кодын гүйцэтгэлийг зохион байгуулах боломжийг олгосон.

Эцэст нь, хэрэв та энэ талаар илүү ихийг мэдэхийг хүсвэл дэлгэрэнгүйг шалгаж болно Дараах холбоос дээр.


Нийтлэлийн агуулга нь бидний зарчмуудыг баримталдаг редакцийн ёс зүй. Алдааны талаар мэдээлэхийн тулд товшино уу энд байна.

Сэтгэгдэл бичих эхний хүн бай

Сэтгэгдэлээ үлдээгээрэй

Таны и-мэйл хаяг хэвлэгдсэн байх болно. Шаардлагатай талбарууд нь тэмдэглэгдсэн байна *

*

*

  1. Мэдээллийг хариуцах: Мигель Анхель Гатан
  2. Мэдээллийн зорилго: СПАМ-ыг хянах, сэтгэгдлийн менежмент.
  3. Хууль ёсны байдал: Таны зөвшөөрөл
  4. Мэдээллийн харилцаа холбоо: Хуулийн үүргээс бусад тохиолдолд мэдээллийг гуравдагч этгээдэд дамжуулахгүй.
  5. Өгөгдөл хадгалах: Occentus Networks (ЕХ) -с зохион байгуулсан мэдээллийн сан
  6. Эрх: Та хүссэн үедээ мэдээллээ хязгаарлаж, сэргээж, устгаж болно.