Versi baru dari Git 2.46 hadir setelah tiga bulan pengembangan dan dalam rilis baru ini beberapa perbaikan dan fitur baru yang signifikan telah dimasukkan seperti dukungan eksperimental untuk jenis bitmap baru, penyempurnaan pada backend eksperimental yang “dapat diperbaiki”, antarmuka baris perintah baru untuk perintah "git config", antara lain.
Versi baru Git 2.4 ini6 menyertakan perbaikan bug dari lebih dari 96 kontributor, 31 di antaranya baru dan dengan demikian, versi baru berisi 746 perubahan.
Fitur baru utama di Git 2.46
Dukungan eksperimental untuk “bitmap aksesibilitas pseudofusi” adalah salah satu perkembangan terpenting rilis ini, dan jenis bitmap baru inidan berbeda dari struktur tradisional "bitmap aksesibilitas" dengan menyimpan data tentang kumpulan objek terkait komit bukan untuk setiap komit individu, tetapi untuk beberapa komit sekaligus.
Dengan demikian, bitmap aksesibilitas pseudomerge ini memungkinkan penggunaan bitmap tunggal untuk mendefinisikan objek dalam penerapan cabang yang berbeda, menghasilkan peningkatan kinerja yang signifikan, terutama pada repositori besar. Hal ini mempercepat operasi seperti git ambil, git rev-list, dan git clone dengan mengurangi kebutuhan untuk menghasilkan beberapa bitmap terpisah.
Git 2.46 juga memperkenalkan beberapa perbaikan penting pada antarmuka baris perintahnya dan dalam pengelolaan kredensial dan penyimpanan data. Antarmuka baris perintah untuk perintah git config telah didesain ulang, mengganti opsi yang berbeda seperti –dapatkan, –dapatkan-semua, –tidak disetel, dan –hapus-bagian dengan serangkaian subperintah yang lebih intuitif. Misalnya, untuk menampilkan semua konfigurasi repositori, kini Anda dapat menggunakan perintah “daftar konfigurasi git«, dan untuk melihat konten parameter tertentu, kini Anda dapat menggunakan perintah «git konfigurasi dapatkan ». Untuk memfilter hasil lebih lanjut, Anda dapat menggunakan opsi “–regexp” untuk menentukan filter berdasarkan ekspresi reguler.
Selain itu, dalam protokol «pembantu kredensial" menambahkan dukungan untuk bidang "authtype" dan "credential" baru, memungkinkan Anda membuat penangan untuk sistem autentikasi HTTP yang melakukan lebih dari sekadar memverifikasi nama pengguna dan sandi, misalnya, saat menggunakan Bearer Token di OAuth 2.0. Dan sebelumnya, Untuk bekerja dengan sistem otentikasi seperti itu, data rahasia perlu ditentukan dalam teks yang jelas dalam parameter http.extraHeader. Di samping itu, protokol menambahkan kemampuan untuk mempertahankan status setiap pengontrol kredensial untuk mendukung metode otentikasi multi-faktor yang digunakan dalam protokol seperti NTLM dan Kerberos.
Di sisi lain, pengembangan backend eksperimental “reftable” telah ditingkatkan untuk penyimpanan tautan ke cabang dan tag yang efisien di repositori. Versi baru menambahkan perintah “git refsmigrate –ref-format=reftable” untuk memigrasikan repositori yang ada ke backend “reftable” (sebelumnya, backend hanya diaktifkan ketika repositori diinisialisasi).
Demikian juga, Di Git 2.46 proses untuk mengkonversi beberapa tes dari test suite telah dimulai, untuk penggunaan tes unit. Hal ini dimaksudkan untuk menyederhanakan pengujian komponen tingkat rendah dan akan meningkatkan efisiensi proses pengujian pada platform Windows, yang menghasilkan biaya overhead yang besar ketika menjalankan sejumlah proses pada platform besar selama pelaksanaan pengujian yang diterapkan dalam skrip shell. .
dari perubahan lain yang menonjol dari versi baru ini:
- Menambahkan opsi “–no-advice” ke perintah git, yang menonaktifkan semua pesan saran dan petunjuk, yang berguna untuk mencegah log tersumbat dengan informasi yang tidak perlu selama panggilan git otomatis.
- Menambahkan kemampuan untuk menggunakan representasi “#RGB” selain representasi “#RRGGBB” dalam kode untuk mengurai pengaturan warna.
- Ketika git merge melihat bahwa indeks tidak dapat diperbarui (misalnya, karena
ke proses lain yang melakukan hal yang sama di latar belakang) - Makro CPP USE_THE_REPOSITORY_VARIABLE diperkenalkan untuk membantu transisi basis kode agar tidak terlalu bergantung pada ketersediaan instance tunggal the_repository.
- “git version –build-options” melaporkan informasi versi
- OpenSSL dan perpustakaan lain (jika digunakan) di build.
- Memperbaiki kebocoran memori di "git mv"
- Dukungan penyelesaian baris perintah yang diperbarui untuk zsh (dalam kontrib/)
untuk berhenti mengekspos keadaan internal ke interaksi shell pengguna akhir
Akhirnya jika Anda tertarik untuk mengetahui lebih banyak tentangnya, Anda dapat memeriksa detailnya di link berikut.