Keluaran sistem kawalan sumber teragih Git 2.23

Dikemukakan oleh pelepasan sistem kawalan sumber teragih Git 2.23.0. Git ialah salah satu sistem kawalan versi yang paling popular, boleh dipercayai dan berprestasi tinggi, menyediakan alat pembangunan bukan linear yang fleksibel berdasarkan percabangan dan penggabungan. Untuk memastikan integriti sejarah dan penentangan terhadap perubahan retroaktif, pencincangan tersirat bagi keseluruhan sejarah terdahulu dalam setiap komit digunakan, dan ia juga mungkin untuk memperakui teg individu dan komit dengan tandatangan digital pembangun.

Berbanding dengan keluaran sebelumnya, versi baharu itu termasuk 505 perubahan, disediakan dengan penyertaan 77 pembangun, di mana 26 daripadanya mengambil bahagian dalam pembangunan buat kali pertama. asas inovasi:

  • Perintah "git switch" dan "git restore" eksperimen diperkenalkan untuk memisahkan keupayaan "git checkout" yang digandingkan secara longgar, seperti manipulasi cawangan (menukar dan mencipta) dan memulihkan fail dalam direktori kerja ("git checkout $commit - $filename") atau serta-merta di kawasan pementasan (“—pementasan”, tidak mempunyai analog dalam “git checkout”). Perlu diingat bahawa, tidak seperti "git checkout", "git restore" mengalih keluar fail yang tidak dijejaki daripada direktori yang dipulihkan ("--no-overlay" secara lalai).
  • Menambahkan pilihan "git merge –quit", yang, sama seperti "-abort", menghentikan proses penggabungan cawangan, tetapi meninggalkan direktori kerja tidak disentuh. Pilihan ini boleh berguna jika beberapa perubahan yang dibuat semasa gabungan manual adalah lebih baik untuk dikeluarkan sebagai komitmen yang berasingan.
  • Perintah "git clone", "git fetch" dan "git push" kini mengambil kira kehadiran commit dalam repositori yang dipautkan (silih berganti);
  • Ditambah pilihan “git blame —ignore-rev” dan “—ignore-revs-file” membolehkan anda melangkau komit yang membuat perubahan kecil (contohnya, pembetulan pemformatan);
  • Menambahkan pilihan "git cherry-pick —skip" untuk melangkau komit yang bercanggah (analog hafalan bagi jujukan "git reset && git cherry-pick —continue");
  • Menambahkan tetapan status.aheadBehind, yang membetulkan pilihan "git status -[no-]ahead-behind" secara kekal;
  • Mulai keluaran ini, "git log" secara lalai mengambil kira perubahan yang dibuat oleh peta mel, sama seperti cara git shortlog sudah lakukan;
  • Operasi kemas kini cache percubaan graf komit (core.commitGraph) yang diperkenalkan pada 2.18 telah dipercepatkan dengan ketara. Juga menjadikan git for-each-ref lebih pantas apabila menggunakan berbilang templat dan mengurangkan bilangan panggilan ke auto-gc dalam "git fetch —multiple";
  • "git branch --list" kini sentiasa menunjukkan HEAD yang terpisah pada permulaan senarai, tanpa mengira tempat.

Sumber: opennet.ru

Tambah komen