Git 2.36 telah dirilis dan ini adalah beritanya

Setelah tiga bulan pembangunan versi baru dari sistem dirilis kontrol kode sumber terdistribusi «Git 2.36» salah satu sistem kontrol versi paling populer, andal, dan berkinerja tinggi yang menyediakan alat pengembangan non-linier yang fleksibel berdasarkan garpu dan gabungan garpu.

Untuk memastikan integritas riwayat dan ketahanan terhadap perubahan "mundur", hash implisit dari semua riwayat sebelumnya digunakan pada setiap komit. Dimungkinkan juga untuk memverifikasi tanda tangan digital dari pengembang label individu dan konfirmasi.

Fitur Utama Git 2.36

Dibandingkan dengan rilis sebelumnya, 717 perubahan diterima dalam versi baru, disiapkan dengan partisipasi 96 pengembang, 26 di antaranya berpartisipasi dalam pengembangan untuk pertama kalinya. Inovasi utama:

pilihan “–remerge-diff” ditambahkan ke perintah “git log” dan “git show” untuk menunjukkan perbedaan antara hasil keseluruhan penggabungan dan data aktual yang tercermin dalam komit setelah memproses perintah "gabung", yang memungkinkan Anda menilai secara visual perubahan yang dibuat sebagai hasil resolusi konflik gabungan. Perintah "git show" biasa memisahkan resolusi konflik yang berbeda dengan lekukan, membuat perubahan sulit untuk dipahami.

Saat menggunakan opsi “–remerge-diff”, perbedaan antara resolusi konflik tidak dipisahkan untuk setiap cabang induk, tetapi perbedaan keseluruhan antara file yang memiliki konflik gabungan dan file yang telah menyelesaikan konflik ditampilkan.

Perubahan penting lainnya adalah peningkatan fleksibilitas dalam penyesuaian perilaku dari membersihkan cache disk melalui panggilan fungsi fsync(). Parameter inti.fsyncObjectFiles sebelumnya tersedia telah dipecah menjadi dua variabel konfigurasi core.fsync dan core.fsyncMethod, yang menyediakan kemampuan untuk menerapkan fsync tidak hanya ke file objek (.git/objects), tetapi juga ke struktur git lainnya seperti file referensi ( .git /refs), reflog, dan paket.

melalui variabel core.fsync, Anda dapat menentukan daftar struktur Git internal, setelah operasi tulis, yang akan dipanggil fsync tambahan. variabel metode inti.fsync memungkinkan Anda memilih metode untuk membersihkan cache, misalnya, Anda dapat memilih fsync untuk menggunakan panggilan sistem dengan nama yang sama, atau menentukan hanya-tulis untuk menggunakan lazywriting tertunda (penulisan malas cache halaman).

Untuk melindungi dari kerentanan yang menangani penggantian direktori .git oleh pengguna lain pada partisi bersama, verifikasi pemilik repositori telah diperkuat. Sekarang hanya menjalankan perintah git apa pun di direktori ".git" mereka sendiri yang diizinkan. Jika direktori repositori dimiliki oleh pengguna lain, kesalahan akan dibuat secara default. Perilaku ini dapat dinonaktifkan menggunakan pengaturan direktori aman.

Itu juga disorot itu menambahkan opsi “–batch-command” ke perintah “git cat-file”, yang dimaksudkan untuk menghasilkan konten asli objek Git, melengkapi perintah “–batch” dan “–batch-cek” sebelumnya tersedia dengan kemampuan untuk secara adaptif memilih jenis output melalui "konten" » untuk menampilkan konten atau «info » untuk menampilkan informasi tentang objek. Juga, perintah "flush" didukung untuk menyiram buffer keluaran.

Di sisi lain, disorot itu menambahkan opsi “–oid-only” (“–object-only”) ke perintah "git ls-tree", yang dirancang untuk mendaftar konten pohon objek yang, dengan analogi dengan "–name -only", hanya menampilkan pengenal objek untuk menyederhanakan panggilan dari skrip. Opsi “–format” juga diterapkan, yang memungkinkan Anda untuk menentukan format output Anda sendiri dengan menggabungkan informasi mode, jenis, nama, dan ukuran.

Dari perubahan lainnya yang menonjol dari versi baru ini:

  • Dalam perintah "git bisect run", definisi tidak mengatur tanda file yang dapat dieksekusi untuk skrip dan menghasilkan kesalahan dengan kode 126 atau 127 dalam hal ini diterapkan (sebelumnya, jika skrip tidak dapat dieksekusi, semua ulasan ditandai memiliki masalah).
  • Menambahkan opsi “–refetch” ke perintah “git fetch” untuk mengambil semua objek tanpa memberi tahu sisi lain konten yang sudah ada di sistem lokal. Perilaku ini dapat berguna untuk memulihkan status setelah kegagalan ketika ada ketidakpastian tentang integritas data lokal.
  • Perintah "git update-index", "git checkout-index", "git read-tree", dan "git clean" sekarang mendukung pengindeksan parsial (indeks jarang) untuk meningkatkan kinerja dan menghemat ruang pada repositori yang melakukan operasi parsial. (pembayaran yang buruk).
  • Mengubah perilaku perintah "git clone --filter=... --recurse-submodules", yang sekarang mengarah ke kloning parsial submodul (sebelumnya, saat menjalankan perintah seperti itu, filter hanya diterapkan ke konten utama dan submodul sepenuhnya kloning tanpa memperhitungkan filter).
  • Menambahkan dukungan untuk menentukan filter untuk penempatan selektif konten dalam perintah "git bundle", mirip dengan operasi klon parsial.
  • Menambahkan opsi “–recurse-submodules” ke perintah “git branch” untuk melintasi submodul secara rekursif.
    Userdiff telah mengusulkan driver baru untuk bahasa Kotlin.

Akhirnya jika Anda tertarik untuk mengetahui lebih banyak tentangnya tentang versi baru Git 2.36 ini, Anda dapat melihat detailnya di link berikut.


tinggalkan Komentar Anda

Alamat email Anda tidak akan dipublikasikan. Bidang yang harus diisi ditandai dengan *

*

*

  1. Penanggung jawab data: Miguel Ángel Gatón
  2. Tujuan data: Mengontrol SPAM, manajemen komentar.
  3. Legitimasi: Persetujuan Anda
  4. Komunikasi data: Data tidak akan dikomunikasikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Basis data dihosting oleh Occentus Networks (UE)
  6. Hak: Anda dapat membatasi, memulihkan, dan menghapus informasi Anda kapan saja.