Git 2.23 тараагдсан эх үүсвэрийн хяналтын системийн хувилбар

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

Өмнөх хувилбартай харьцуулахад шинэ хувилбарт 505 өөрчлөлт орсон бөгөөд 77 хөгжүүлэгчийн оролцоотойгоор бэлтгэгдсэнээс 26 нь анх удаа хөгжүүлэлтэд оролцсон байна. Үндсэн инноваци:

  • Туршилтын "git switch" болон "git restore" командууд нь салангид холболттой "git checkout" боломжуудыг, тухайлбал салбар удирдах (шилжүүлэх, үүсгэх) болон ажлын директор доторх файлуудыг сэргээх ("git checkout $commit - $filename") гэх мэтийг нэвтрүүлсэн. эсвэл нэн даруй тайзны хэсэгт (“—үхлэх”, “git checkout”-д аналоггүй). "git checkout"-аас ялгаатай нь "git restore" нь сэргээж буй сангаас хянаагүй файлуудыг устгадаг гэдгийг тэмдэглэх нь зүйтэй (анхдагчаар "--no-overlay").
  • "-abort"-той адил салбаруудыг нэгтгэх үйл явцыг зогсоож, ажлын лавлахыг хөндөөгүй "git merge –quit" сонголтыг нэмсэн. Гараар нэгтгэх явцад хийсэн зарим өөрчлөлтийг тусдаа үүрэг болгон гаргах нь зүйтэй бол энэ сонголт ашигтай байж болно.
  • "git clone", "git fetch" болон "git push" командууд нь одоо холбогдсон репозиторууд дахь коммитуудыг харгалзан үздэг (ээлжлэн);
  • Нэмсэн “git blame —ignore-rev” болон “—ignore-revs-file” сонголтууд нь бага зэргийн өөрчлөлт (жишээ нь, форматын засвар) хийх үйлдлийг алгасах боломжийг танд олгоно;
  • Зөрчилтэй үйлдлийг алгасахын тулд "git cherry-pick —skip" сонголтыг нэмсэн ("git reset && git cherry-pick —үргэлжлүүлэх" дарааллын цээжилсэн аналог);
  • “git status -[no-]ahead-behind” сонголтыг бүрмөсөн засдаг status.aheadBehind тохиргоог нэмсэн;
  • Энэ хувилбарын дагуу "git log" нь git shortlog-ийн хийсэнтэй адил шуудангийн газрын зургийн өөрчлөлтийг анхдагчаар тооцдог;
  • 2.18-д нэвтрүүлсэн commit графикийн туршилтын кэшийг (core.commitGraph) шинэчлэх ажиллагаа ихээхэн хурдассан. Мөн олон загвар ашиглах үед git for-each-ref-ийг илүү хурдан болгож, "git fetch —multiple"-д auto-gc руу хийх дуудлагын тоог багасгасан;
  • "git branch --list" нь одоо жагсаалтын хамгийн эхэнд үргэлж салангид HEAD-г харуулдаг.

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

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