Git 2.38 эх сурвалжийн хяналтын хувилбар

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

Өмнөх хувилбартай харьцуулахад шинэ хувилбарт 699 өөрчлөлт орсон бөгөөд 92 хөгжүүлэгчийн оролцоотойгоор бэлтгэгдсэнээс 24 нь анх удаа хөгжүүлэлтэд оролцсон байна. Гол инноваци:

  • Үндсэн бүтцэд том агуулахуудыг удирдах зорилгоор Майкрософтоос боловсруулсан "скаляр" хэрэглүүрийг багтаасан болно. Уг хэрэгсэл нь анх C# хэл дээр бичигдсэн боловч git нь C хэл дээр өөрчлөгдсөн хувилбарыг агуулдаг. Шинэ хэрэгсэл нь маш том хадгалах газартай ажиллахад гүйцэтгэлд нөлөөлдөг нэмэлт функцууд болон тохиргоог анхдагчаар идэвхжүүлснээрээ git тушаалаас ялгаатай. Жишээлбэл, скаляр ашиглах үед энэ нь хамаарна:
    • Хадгалах сангийн бүрэн бус хуулбартай ажиллахын тулд хэсэгчилсэн клонжуулалт.
    • Файлын систем дэх өөрчлөлтийг хянах суурилуулсан механизм (FSMonitor) нь бүхэл бүтэн ажлын лавлахыг хайхгүйгээр хийх боломжийг олгодог.
    • Янз бүрийн багц файл дахь объектуудыг хамарсан индексүүд (олон багц).
    • мэдээлэлд хандах хандалтыг оновчтой болгоход ашигладаг commit graph индекс бүхий commit-graph файлууд.
    • Интерактив сессийг хаахгүйгээр хадгалах сангийн оновчтой бүтцийг арын дэвсгэр дээр хадгалахад чиглэсэн үечилсэн ажил (алсын репозитороос шинэ объектуудыг идэвхтэй татаж авах, файлыг гүйцэтгэх графикаар шинэчлэх ажлыг цагт нэг удаа хийдэг, багцлах үйл явц). агуулах нь орой бүр эхэлдэг).
    • "sparseCheckoutCone" горим нь хэсэгчлэн хувилах үед зөвшөөрөгдсөн хэв маягийг хязгаарладаг.
  • "git rebase" командад --update-refs сонголтыг нэмсэн бөгөөд шаардлагатай амлалт руу шилжихийн тулд хамааралтай салбар бүрийг гараар шалгахын оронд шилжүүлж буй салбаруудтай давхцаж буй хамааралтай салбаруудыг шинэчлэх боломжтой болсон.
  • "git rm" командыг хэсэгчилсэн индекстэй нийцтэй болгосон.
  • "Конус" горимд байгаа хэсэгчилсэн индекс бүхий ажлын талбараас энэ горимгүй гаднах хүрээ рүү файлыг зөөх үед "git mv A B" командын ажиллагааг сайжруулсан.
  • Битмап файлын форматыг том агуулахтай ажиллахад оновчтой болгосон - сонгосон үүргийн жагсаалт болон тэдгээрийн офсетийн жагсаалт бүхий нэмэлт индексийн хүснэгтийг нэмсэн.
  • "git merge-tree" команд нь шинэ горимыг хэрэгжүүлдэг бөгөөд энэ горимд заасан хоёр үүрэг дээр үндэслэн нэгтгэлийн үр дүн бүхий модыг эдгээр коммитуудын түүхийг нэгтгэсэн мэт тооцдог.
  • "Safe.barerepository" тохиргоог нэмсэн бөгөөд бусад git репозиторууд дотор нүцгэн агуулахуудыг (ажиллах мод агуулаагүй репозиторий) удирдах боломжтой болсон. "Тодорхой" гэж тохируулсан тохиолдолд зөвхөн дээд директорт байрлах нүцгэн хадгалах газруудтай ажиллах боломжтой болно. Дэд сангуудад нүцгэн агуулахуудыг байрлуулахын тулд "бүх" утгыг ашиглана уу.
  • “git grep” команд нь “-m” (“—max-count”) сонголтыг нэмсэн бөгөөд энэ нь GNU grep дээрх ижил нэртэй сонголттой төстэй бөгөөд харуулах тохирох тоог хязгаарлах боломжийг танд олгоно.
  • "ls-files" команд нь гаралтын талбаруудыг тохируулах "--format" сонголтыг хэрэгжүүлдэг (жишээлбэл, та объектын нэр, горим гэх мэт гаралтыг идэвхжүүлж болно).
  • "git cat-file"-д объектын агуулгыг харуулахдаа мэйл зургийн файлд заасан зохиогчийн имэйлийн холбоосыг харгалзан үзэх боломжтой.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх