Git 2.36 release kontrol sumber

Saatos tilu bulan pangwangunan, sistem kontrol sumber anu disebarkeun Git 2.36 parantos dileupaskeun. Git mangrupikeun salah sahiji sistem kontrol versi anu pang populerna, dipercaya sareng berprestasi tinggi, nyayogikeun alat pangembangan non-linier anu fleksibel dumasar kana cabang sareng ngahiji. Pikeun mastikeun integritas sajarah sareng résistansi kana parobahan retroaktif, hashing implisit tina sakabéh sajarah saméméhna dianggo dina unggal komitmen; ogé mungkin pikeun ngajamin tag individu sareng komitmen sareng tanda tangan digital para pamekar.

Dibandingkeun sareng sékrési saméméhna, 717 parobihan diadopsi kana vérsi énggal, disiapkeun sareng partisipasi 96 pamekar, dimana 26 mimitina milu dina pangwangunan. Inovasi utama:

  • Paréntah "git log" sareng "git show" ayeuna gaduh pilihan "-remerge-diff" anu ngamungkinkeun anjeun nunjukkeun bédana antara hasil gabungan sareng data saleresna anu ditingali dina komitmen saatos ngolah paréntah "merge" , nu ngidinan Anjeun pikeun évaluasi jelas parobahan dijieun salaku hasil resolving konflik ngahiji. Paréntah "git show" normal ngindétkeun résolusi konflik anu béda-béda, ngajantenkeun parobihan hésé kahartos. Contona, dina screenshot handap garis "+/-" tanpa indentation nembongkeun resolusi panungtungan konflik pakait sareng renaming of sha1 kana oid dina komentar dina cabang kahiji, sarta "+/-" kalawan indentation nembongkeun awal. resolusi konflik disababkeun ku penampilan argumen tambahan dina cabang kadua di dwim_ref () fungsi.
    Git 2.36 release kontrol sumber

    Lamun ngagunakeun pilihan "--remerge-diff", béda antara resolusi konflik teu dipisahkeun pikeun tiap cabang indungna, tapi béda sakabéh antara file nu geus ngahiji konflik jeung file nu konflik direngsekeun ditémbongkeun.

    Git 2.36 release kontrol sumber

  • Ngaronjat kalenturan dina ngonpigurasikeun kabiasaan pikeun flushing caches disk via panggero pikeun fungsi fsync (). Parameter core.fsyncObjectFiles nu geus sadia saméméhna geus dibeulah jadi dua variabel konfigurasi core.fsync jeung core.fsyncMethod, nyadiakeun kamampuhan pikeun nerapkeun fsync teu ngan ka file obyék (.git/objék), tapi ogé pikeun struktur git séjén kayaning Tumbu ( .git /refs), reflog sareng pak file.

    Ngagunakeun variabel core.fsync, Anjeun bisa nangtukeun daptar struktur Git internal nu fsync Sajaba bakal disebut sanggeus operasi nulis. Variabel core.fsyncMethod ngidinan Anjeun pikeun milih hiji metodeu pikeun flushing cache, Contona, Anjeun bisa milih fsync pikeun make panggero sistem nu ngaranna sarua, atawa nangtukeun writeout-hijina pikeun make pagecache writeback.

  • Pikeun nangtayungan tina kerentanan anu ngamanipulasi substitusi pamaké séjén tina .git directories kana bagian dibagikeun, verifikasi boga gudang geus strengthened. Ngaéksekusi sagala paréntah git ayeuna ngan diwenangkeun dina directories ".git" sorangan. Upami diréktori sareng gudang milik pangguna sanés, maka kasalahan bakal ditingalikeun sacara standar. Paripolah ieu tiasa ditumpurkeun nganggo setélan safe.directory.
  • Paréntah "git cat-file", dimaksudkeun pikeun ngaluarkeun eusi sumber objék Git, parantos ditambah ku pilihan "--batch-command", anu ngalengkepan "--batch" sareng "--batch-check" sateuacana. ” Paréntah kalawan kamampuhan pikeun adaptively milih tipe kaluaran ngagunakeun " eusi <obyek>" pikeun mintonkeun eusi atawa "info <obyek>" pikeun mintonkeun informasi ngeunaan objék. Salaku tambahan, paréntah "siram" dirojong pikeun nyéépkeun panyangga kaluaran.
  • Pikeun paréntah "git ls-tree", dimaksudkeun pikeun ngahasilkeun daptar eusi tangkal obyék, pilihan "-oid-only" ("-object-only") parantos ditambahkeun, sami sareng "-name-only". ”, ngan ukur nunjukkeun identifier obyék pikeun nyederhanakeun telepon tina skrip. Ogé dilaksanakeun nyaéta pilihan "--format", nu ngidinan Anjeun pikeun nangtukeun format kaluaran sorangan ku ngagabungkeun informasi ngeunaan mode, jenis, ngaran jeung ukuran.
  • Paréntah "git bisect run" ngalaksanakeun deteksi henteu netepkeun bandéra file anu tiasa dieksekusi pikeun naskah sareng dina hal ieu nunjukkeun kasalahan sareng kode 126 atanapi 127 (saméméhna, upami naskah henteu tiasa dijalankeun, sadaya révisi ditandaan janten masalah) .
  • Nambahkeun pilihan --refetch kana paréntah "git fetch" pikeun nyandak sadaya objék tanpa nginpokeun ka pihak anu sanés ngeunaan eusi anu aya dina sistem lokal. Paripolah ieu tiasa mangpaat pikeun pulih tina kagagalan nalika integritas data lokal henteu pasti.
  • Paréntah "git update-indéks", "git checkout-indéks", "git read-tree" sareng "git clean" ayeuna ngadukung indéks parsial (indéks sparse) pikeun ningkatkeun kinerja sareng ngahémat rohangan dina repositori dimana operasi parsial dilaksanakeun. kloning (Sparse-Checkout).
  • Paripolah paréntah "git clone —filter=… —recurse-submodules” parantos dirobih, anu ayeuna nuju kana kloning parsial submodules (saméméhna, nalika ngalaksanakeun paréntah sapertos kitu, saringan ngan ukur dilarapkeun kana eusi utama, sareng submodules éta. diklon lengkep tanpa merhatikeun saringan).
  • Paréntah "git bundle" parantos nambihan dukungan pikeun nangtukeun saringan pikeun selektif nempatkeun eusi, sami sareng operasi kloning parsial.
  • Ditambahkeun pilihan "--recurse-submodules" kana paréntah "git branch" pikeun ngaliwat submodules sacara rekursif.
  • Userdiff nawiskeun pawang énggal pikeun basa Kotlin.

sumber: opennet.ru

Tambahkeun komentar