Git 2.46 tiba dengan penambahbaikan, pembetulan dan jenis peta bit baharu

git 2.46

Versi baru dari Git 2.46 tiba selepas tiga bulan pembangunan dan dalam keluaran baharu ini beberapa penambahbaikan dan ciri baharu yang ketara telah digabungkan seperti sokongan percubaan untuk jenis peta bit baharu, penambahbaikan pada bahagian belakang eksperimen "boleh ubah", antara muka baris arahan baharu untuk arahan "git config", antara lain.

Versi baharu Git 2.4 ini6 termasuk pembetulan pepijat daripada lebih 96 penyumbang, 31 daripadanya baharu dan oleh itu, versi baharu mengandungi 746 perubahan.

Ciri baharu utama dalam Git 2.46

Sokongan eksperimen untuk "peta bit kebolehaksesan pseudofusion" ialah salah satu perkembangan yang paling penting keluaran ini, dan jenis peta bit baharu inidan berbeza daripada struktur tradisional "peta bit kebolehaksesan" dengan menyimpan data tentang set objek berkaitan komit bukan untuk setiap komit individu, tetapi untuk beberapa komit sekaligus.

Oleh itu, peta bit kebolehcapaian pseudomerge ini membenarkan menggunakan satu bitmap untuk menentukan objek dalam komit cawangan yang berbeza, menghasilkan peningkatan prestasi yang ketara, terutamanya pada repositori yang besar. Ini mempercepatkan operasi seperti git fetch, git rev-list, dan git clone dengan mengurangkan keperluan untuk menjana berbilang peta bit berasingan.

Git 2.46 juga memperkenalkan beberapa penambahbaikan penting pada antara muka baris arahannya dan dalam pengurusan kelayakan dan penyimpanan data. Antara muka baris arahan untuk arahan git config telah direka bentuk semula, menggantikan pilihan yang berbeza seperti –dapatkan, –dapatkan-semua, –tidak ditetapkan, dan –buang-bahagian dengan satu set subperintah yang lebih intuitif. Sebagai contoh, untuk memaparkan semua konfigurasi repositori, anda kini boleh menggunakan arahan “senarai konfigurasi git«, dan untuk melihat kandungan parameter tertentu, anda kini boleh menggunakan arahan «git config dapatkan ». Untuk menapis hasil dengan lebih lanjut, anda boleh menggunakan pilihan "–regexp" untuk menentukan penapis berdasarkan ungkapan biasa.

Di samping itu, dalam protokol «pembantu kelayakan" menambah sokongan untuk medan "authtype" dan "credential" baharu, membolehkan anda mencipta pengendali untuk sistem pengesahan HTTP yang melakukan lebih daripada sekadar mengesahkan nama pengguna dan kata laluan, contohnya, apabila menggunakan Token Pembawa dalam OAuth 2.0. Dan sebelum ini, Untuk bekerja dengan sistem pengesahan sedemikian, adalah perlu untuk menentukan data sulit dalam teks yang jelas dalam parameter http.extraHeader. selain itu, protokol menambah keupayaan untuk mengekalkan keadaan setiap pengawal kelayakan untuk menyokong kaedah pengesahan berbilang faktor yang digunakan dalam protokol seperti NTLM dan Kerberos.

Sebaliknya, pembangunan bahagian belakang eksperimen "boleh direfleksikan" telah dipertingkatkan untuk penyimpanan pautan yang cekap ke cawangan dan tag dalam repositori. Versi baharu menambah perintah "git refs migrate –ref-format=reftable" untuk memindahkan repositori sedia ada ke bahagian belakang "boleh direfleksikan" (sebelum ini, bahagian belakang hanya didayakan apabila repositori dimulakan).

Juga, Dalam Git 2.46 proses untuk menukar beberapa ujian daripada suite ujian telah bermula, kepada penggunaan ujian unit. Ini bertujuan untuk memudahkan ujian komponen peringkat rendah dan akan meningkatkan kecekapan proses ujian pada platform Windows, yang menjana kos overhed yang besar apabila menjalankan beberapa proses pada platform yang besar semasa pelaksanaan ujian yang dilaksanakan dalam shell. skrip.

Daripada perubahan lain yang menonjol versi baru ini:

  • Menambahkan pilihan "–no-nasihat" pada arahan git, yang melumpuhkan semua nasihat dan mesej petunjuk, yang boleh berguna untuk mengelakkan log daripada tersumbat dengan maklumat yang tidak diperlukan semasa panggilan git automatik.
  • Menambahkan keupayaan untuk menggunakan perwakilan "#RGB" sebagai tambahan kepada perwakilan "#RRGGBB" dalam kod untuk menghuraikan tetapan warna.
  • Apabila git merge melihat bahawa indeks tidak boleh dikemas kini (contohnya, disebabkan oleh
    kepada proses lain yang melakukan perkara yang sama di latar belakang)
  • Makro CPP USE_THE_REPOSITORY_VARIABLE diperkenalkan untuk membantu mengalihkan pangkalan kod agar kurang bergantung pada ketersediaan tika tunggal the_repository.
  • “versi git –build-options” melaporkan maklumat versi
  • OpenSSL dan perpustakaan lain (jika digunakan) dalam binaan.
  • Membetulkan kebocoran memori dalam "git mv"
  • Sokongan penyiapan baris perintah yang dikemas kini untuk zsh (dalam sumbangan/)
    untuk berhenti mendedahkan keadaan dalaman kepada interaksi shell pengguna akhir

Akhirnya sekiranya anda berminat untuk mengetahui lebih lanjut mengenainya, anda boleh menyemak butiran di pautan berikut.