Git 2.36 source control release

Taorian'ny fampandrosoana telo volana dia navoaka ny rafitra fanaraha-maso loharano voazara Git 2.36. Git dia iray amin'ireo rafitra fanaraha-maso dikan-teny malaza indrindra, azo ianteherana ary avo lenta, manome fitaovana fampivoarana tsy misy tsipika miorina amin'ny sampana sy ny fampifangaroana. Mba hiantohana ny fahamarinan'ny tantara sy ny fanoherana ny fiovana mihemotra, dia ampiasaina amin'ny commit tsirairay ny hashing an-kolaka ny tantara teo aloha; azo atao ihany koa ny manamarina ny mari-pamantarana tsirairay ary manolo-tena amin'ny sonia nomerika an'ny mpamorona.

Raha ampitahaina amin'ny famoahana teo aloha, fanovana 717 no noraisina tamin'ny dikan-teny vaovao, nomanina niaraka tamin'ny fandraisan'anjaran'ny mpamorona 96, ka ny 26 tamin'ireo no nandray anjara voalohany tamin'ny fampandrosoana. Fanavaozana lehibe:

  • Π’ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Β«git logΒ» ΠΈ Β«git showΒ» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° опция Β«β€”remerge-diffΒ», ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ отличия ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±Ρ‰ΠΈΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ слияния ΠΈ фактичСскими Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, ΠΎΡ‚Ρ€Π°ΠΆΡ‘Π½Π½Ρ‹ΠΌΠΈ Π² ΠΊΠΎΠΌΠΌΠΈΡ‚Π΅ послС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Β«mergeΒ», Ρ‡Ρ‚ΠΎ позволяСт наглядно ΠΎΡ†Π΅Π½ΠΈΡ‚ΡŒ измСнСния, Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹Π΅ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ² ΠΏΡ€ΠΈ слиянии. ΠžΠ±Ρ‹Ρ‡Π½Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° Β«git showΒ» раздСляСт Ρ€Π°Π·Π½Ρ‹Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ² отступом, Ρ‡Ρ‚ΠΎ затрудняСт ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. НапримСр, Π½Π° ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚Π΅ Π½ΠΈΠΆΠ΅ строки Β«+/-Β» Π±Π΅Π· отступа ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ послСднСС Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Π°, связанноС с ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π² ΠΏΠ΅Ρ€Π²ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠ΅ sha1 Π½Π° oid Π² ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ, Π° Β«+/-Β» с отступом β€” Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Π°, Π²Ρ‹Π·Π²Π°Π½Π½ΠΎΠ΅ появлСниСм Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π° Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ dwim_ref().
    Git 2.36 source control release

    ΠŸΡ€ΠΈ использовании ΠΎΠΏΡ†ΠΈΠΈ Β«β€”remerge-diffΒ» различия ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΠΌΠΈ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ² Π½Π΅ Ρ€Π°Π·Π΄Π΅Π»ΡΡŽΡ‚ΡΡ для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ, Π° ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΎΠ±Ρ‰ΠΈΠ΅ различия ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ„Π°ΠΉΠ»ΠΎΠΌ, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΌ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹ слияния, ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠΌ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹ Ρ€Π΅ΡˆΠ΅Π½Ρ‹.

    Git 2.36 source control release

  • ΠŸΠΎΠ²Ρ‹ΡˆΠ΅Π½Π° Π³ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ настройки повСдСния ΠΏΠΎ сбросу дисковых кэшСй Ρ‡Π΅Ρ€Π΅Π· Π²Ρ‹Π·ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ fsync(). Π Π°Π½Π΅Π΅ доступный ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ core.fsyncObjectFiles Ρ€Π°Π·Π΄Π΅Π»Ρ‘Π½ Π½Π° Π΄Π²Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ core.fsync ΠΈ core.fsyncMethod, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ fsync, Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊ Ρ„Π°ΠΉΠ»Π°ΠΌ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ (.git/objects), Π½ΠΎ ΠΈ ΠΊ Π΄Ρ€ΡƒΠ³ΠΈΠΌ структурам git, Ρ‚Π°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ ссылки (.git/refs), reflog ΠΈ pack-Ρ„Π°ΠΉΠ»Ρ‹.

    Π§Π΅Ρ€Π΅Π· ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ core.fsync ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ список Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… структур Git, послС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ записи для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ fsync. ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ core.fsyncMethod позволяСт Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ для сброса кэша, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ fsync для примСнСния ΠΎΠ΄Π½ΠΎΠΈΠΌΡ‘Π½Π½ΠΎΠ³ΠΎ систСмного Π²Ρ‹Π·ΠΎΠ²Π° ΠΈΠ»ΠΈ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ writeout-only для примСнСния ΠΎΡ‚Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠΉ записи (pagecache writeback).

  • Для Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ уязвимостСй, ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… подстановкой Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² .git Π² совмСстно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Ρ€Π°Π·Π΄Π΅Π»Ρ‹, усилСна ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π° рСпозитория. Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π»ΡŽΠ±Ρ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄ git Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ допускаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² своих ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°Ρ… Β«.gitΒ». Если ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ с Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ‚ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ, Ρ‚ΠΎ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²Π΅Π΄Π΅Π½Π° ошибка. Π£ΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ настройки safe.directory.
  • Π’ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Β«git cat-fileΒ», ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΡƒΡŽ для Π²Ρ‹Π²ΠΎΠ΄Π° исходного содСрТимого Git-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° опция Β«β€”batch-commandΒ», Π΄ΠΎΠΏΠΎΠ»Π½ΡΡŽΡ‰Π°Ρ Ρ€Π°Π½Π΅Π΅ доступныС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Β«β€”batchΒ» ΠΈ Β«β€”batch-checkΒ» Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ Π°Π΄Π°ΠΏΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ Π²Ρ‹Π±ΠΎΡ€Π° Ρ‚ΠΈΠΏΠ° Π²Ρ‹Π²ΠΎΠ΄Π° Ρ‡Π΅Ρ€Π΅Π· ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ Β«contents <ΠΎΠ±ΡŠΠ΅ΠΊΡ‚>Β» для Π²Ρ‹Π²ΠΎΠ΄Π° содСрТимого ΠΈΠ»ΠΈ Β«info <ΠΎΠ±ΡŠΠ΅ΠΊΡ‚>Β» для Π²Ρ‹Π²ΠΎΠ΄Π° информация ΠΎΠ± ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ поддСрТиваСтся ΠΊΠΎΠΌΠ°Π½Π΄Π° Β«flushΒ» для сброса Π±ΡƒΡ„Π΅Ρ€Π° Π²Ρ‹Π²ΠΎΠ΄Π°.
  • Π’ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Β«git ls-treeΒ», ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΡƒΡŽ для формирования списка содСрТимого Π΄Π΅Ρ€Π΅Π²Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° опция Β«β€”oid-onlyΒ» (Β«β€”object-onlyΒ»), ΠΏΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ с Β«β€”name-onlyΒ» выводящая Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² для упрощСния Π²Ρ‹Π·ΠΎΠ²Π° ΠΈΠ· скриптов. Π’Π°ΠΊΠΆΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° опция Β«β€”formatΒ» ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ собствСнный Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π²Ρ‹Π²ΠΎΠ΄Π°, комбинируя ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Ρ€Π΅ΠΆΠΈΠΌΠ΅, Ρ‚ΠΈΠΏΠ΅, ΠΈΠΌΠ΅Π½ΠΈ ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€Π΅.
  • Π’ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Β«git bisect runΒ» Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ нСвыставлСния для скрипта ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠ° исполняСмого Ρ„Π°ΠΉΠ»Π° ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π° Π² этом случаС ошибок с ΠΊΠΎΠ΄Π°ΠΌΠΈ 126 ΠΈΠ»ΠΈ 127 (Ρ€Π°Π½Π΅Π΅, Ссли скрипт Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ всС Ρ€Π΅Π²ΠΈΠ·ΠΈΠΈ ΠΏΠΎΠΌΠ΅Ρ‡Π°Π»ΠΈΡΡŒ ΠΊΠ°ΠΊ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹).
  • Π’ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Β«git fetchΒ» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° опция Β«β€”refetchΒ» для извлСчСния всСх ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π±Π΅Π· информирования Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны ΠΎ содСрТимом, ΡƒΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‰Π΅ΠΌΡΡ Π½Π° локальной систСмС. ПодобноС ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ для восстановлСния состояния послС сбоСв, ΠΊΠΎΠ³Π΄Π° Π½Π΅Ρ‚ увСрСнности Π² цСлостности Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ….
  • Π’ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Β«git update-indexΒ», Β«git checkout-indexΒ», Β«git read-treeΒ» ΠΈ Β«git cleanΒ» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° частичных индСксов (sparse index), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΡ… ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ мСсто Π² рСпозиториях, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ частичного клонирования (sparse-checkout).
  • ИзмСнСно ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Β«git clone β€”filter=… β€”recurse-submodulesΒ», которая Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ частичному ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ субмодулСй (Ρ€Π°Π½Π΅Π΅ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ примСнялся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊ основному содСрТимому, Π° субмодули ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π»ΠΈΡΡŒ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π±Π΅Π· ΡƒΡ‡Ρ‘Ρ‚Π° Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°).
  • Π’ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Β«git bundleΒ» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° указания Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ² для Π²Ρ‹Π±ΠΎΡ€ΠΎΡ‡Π½ΠΎΠ³ΠΎ помСщСния содСрТимого ΠΏΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ с опСрациями частичного клонирования.
  • Π’ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Β«git branchΒ» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° опция Β«β€”recurse-submodulesΒ» для рСкурсивного ΠΎΠ±Ρ…ΠΎΠ΄Π° субмодулСй.
  • Π’ userdiff ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ для языка Kotlin.

Source: opennet.ru

Add a comment