Новая вСрсия Git 2.28, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ имя «master» для основных Π²Π΅Ρ‚ΠΎΠΊ

ДоступСн выпуск распрСдСлСнной систСмы управлСния исходными тСкстами Git 2.28.0. Git являСтся ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· самых популярных, Π½Π°Π΄Ρ‘ΠΆΠ½Ρ‹Ρ… ΠΈ Π²Ρ‹ΡΠΎΠΊΠΎΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… систСм управлСния вСрсиями, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅ΠΉ Π³ΠΈΠ±ΠΊΠΈΠ΅ срСдства Π½Π΅Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π±Π°Π·ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ΡΡ Π½Π° ΠΎΡ‚Π²Π΅Ρ‚Π²Π»Π΅Π½ΠΈΠΈ ΠΈ слиянии Π²Π΅Ρ‚ΠΎΠΊ. Для обСспСчСния цСлостности истории ΠΈ устойчивости ΠΊ измСнСниям «Π·Π°Π΄Π½ΠΈΠΌ числом» ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ нСявноС Ρ…Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ всСй ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ истории Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΊΠΎΠΌΠΌΠΈΡ‚Π΅, Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ удостовСрСниС Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹ΠΌΠΈ подписями Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ‚Π΅Π³ΠΎΠ² ΠΈ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ².

По ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с ΠΏΡ€ΠΎΡˆΠ»Ρ‹ΠΌ выпуском Π² Π½ΠΎΠ²ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ принято 317 ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈ участии 58 Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… 13 Π²ΠΏΠ΅Ρ€Π²Ρ‹Π΅ приняли участиС Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Π½ΠΎΠ²ΡˆΠ΅ΡΡ‚Π²Π°:

  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° настройка init.defaultBranch, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ΅ имя основной Π²Π΅Ρ‚ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. Настройка Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° для ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½Π΅ Π΄Π°ΡŽΡ‚ покоя воспоминания ΠΎ рабствС, Π° слово «master» воспринимаСтся ΠΊΠ°ΠΊ ΠΎΡΠΊΠΎΡ€Π±ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π½Π°ΠΌΡ‘ΠΊ ΠΈΠ»ΠΈ Π½Π°Π²Π΅Π²Π°Π΅Ρ‚ Π΄ΡƒΡˆΠ΅Π²Π½Ρ‹Π΅ ΠΌΡƒΠΊΠΈ ΠΈ чувство нСискуплённой Π²ΠΈΠ½Ρ‹. GitHub, GitLab ΠΈ Bitbucket приняли Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ вмСсто слова «master» для основных Π²Π΅Ρ‚ΠΎΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ слово «main». Π’ Git, ΠΊΠ°ΠΊ ΠΈ Ρ€Π°Π½ΡŒΡˆΠ΅, ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ «git init» ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒΡΡ Π²Π΅Ρ‚ΠΊΠ° «master», Π½ΠΎ это имя Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ. НапримСр, для измСнСния ΠΈΠΌΠ΅Π½ΠΈ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ Π½Π° «main» ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

    git config —global init.defaultBranch main

  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, основанныС Π½Π° появлСнии Π² Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ commit-graph, примСняСмом для ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ доступа ΠΊ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°Ρ…, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ² Π‘Π»ΡƒΠΌΠ°, вСроятностной структуры, Π΄ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‰Π΅ΠΉ Π»ΠΎΠΆΠ½ΠΎΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ элСмСнта, Π½ΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅ΠΉ пропуск ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ элСмСнта. Указанная структура позволяСт Π·Π°ΠΌΠ΅Ρ‚Π½ΠΎ ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ поиск Π² истории ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΏΡ€ΠΈ использовании ΠΊΠΎΠΌΠ°Π½Π΄ «git log — <path>» ΠΈΠ»ΠΈ «git blame».
  • Π’ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ «git status» обСспСчСн Π²Ρ‹Π²ΠΎΠ΄ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ прогрСссС выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ частичного клонирования (sparse-checkout).
  • Для ΠΊΠΎΠΌΠ°Π½Π΄ сСмСйства «diff» ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π° новая настройка «diff.relative».
  • ΠŸΡ€ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ΅ Ρ‡Π΅Ρ€Π΅Π· «git fsck» Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ оцСниваСтся сортировка Π΄Π΅Ρ€Π΅Π²Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ Π²Ρ‹ΡΠ²Π»ΡΡŽΡ‚ΡΡ нСотсортированныС элСмСнты.
  • Π£ΠΏΡ€ΠΎΡ‰Ρ‘Π½ интСрфСйс для рСдактирования ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² Π²Ρ‹Π²ΠΎΠ΄Π΅ трассировки.
  • Π’ сцСнарии автодополнСния Π²Π²ΠΎΠ΄Π° Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° дополнСния ΠΎΠΏΡ†ΠΈΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ «git switch».
  • Π’ «git diff» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² Π² Ρ€Π°Π·Π½Ρ‹Ρ… нотациях («git diff A..B C», «git diff A..B C…D» ΠΈ Ρ‚.ΠΏ.).
  • Π’ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ «git fast-export —anonymize» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ задания собствСнного сопоставлСния элСмСнтов для Ρ‚ΠΎΠ½ΠΊΠΎΠΉ настройки Π²Ρ‹Π²ΠΎΠ΄Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π±ΠΎΠ»Π΅Π΅ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΌ для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ.
  • Π’ «git gui» Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‡ΠΈΠ΅ Π΄Π΅Ρ€Π΅Π²ΡŒΡ ΠΈΠ· Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π΄ΠΈΠ°Π»ΠΎΠ³Π°.
  • Π’ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π΅ «fetch/clone» Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ информирования ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° сСрвСром ΠΎ нСобходимости Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π·Π°Ρ€Π°Π½Π΅Π΅ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½Ρ‹Ρ… pack-Ρ„Π°ΠΉΠ»ΠΎΠ² Π² Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹ΠΌ ΡƒΠΏΠ°ΠΊΠΎΠ²Π°Π½Π½Ρ‹ΠΌ Π΄Π°Π½Π½Ρ‹ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°.
  • ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠΎ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Ρƒ Π½Π° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Ρ…Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ SHA-256 вмСсто SHA-1.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru