Serbestberdana pergala kontrola çavkaniya belavkirî Git 2.27

Berdeste serbestberdana pergala kontrolê ya çavkaniya belavkirî git 2.27.0. Git yek ji wan pergalên kontrolkirina guhertoya herî populer, pêbawer û bi performansa bilind e, ku amûrên pêşkeftina ne-xetî yên maqûl li ser bingeha şaxkirin û hevgirtinê peyda dike. Ji bo misogerkirina yekrêziya dîrokê û berxwedana li hember guhertinên paşverû, di her commit de hejandina nepenî ya tevahiya dîroka berê tê bikar anîn; di heman demê de gengaz e ku bi îmzeyên dîjîtal ên pêşdebiran tag û peymanên kesane jî were pejirandin.

По сравнению с прошлым выпуском в новую версию принято 537 изменений, подготовленных при участии 71 разработчика, из которых 19 впервые приняли участие в разработке. Основные nûbûnên:

  • Отменено реализованное в прошлом выпуске включение по умолчанию второй версии коммуникационного протокола Git, который используется при удалённом подключении клиента к Git-серверу. Протокол признан пока не готовым к использованию по умолчанию из-за выявления скользких моментов, требующих отдельного рассмотрения.
  • Добавлен набор опций для настройки SSL-соединения при обращении через прокси.
  • Расширена информация, выдаваемая при использовании преобразующих фильтров «clean» и «smudge». Например, теперь показывается объект tree-ish, в котором появляется преобразуемый блоб.
  • Для избежания путаницы в команде «git describe» теперь всегда применяется расширенный режим вывода («—long»), если выявлен связанный с коммитом заменённый тег (раньше, подписанный или аннотированный тег, описывающий коммит, выводился даже если он был переименован или перемещён в иерархии «refs/tags/», и команда «git show тег^0» не работала как ожидалось — «refs/tags/тег» не находился или даже выдавался уже другой тег).
  • При выполнении «git pull» теперь выдаётся предупреждение, если явно не задана конфигурационная переменная pull.rebase и не применены опции «—[no-]rebase» или «—ff-only». Для подавления предупреждения теми, кто не собирается выполнять операцию rebase, можно установить переменной значение «false».
  • Проведена ревизия опций «git pull», общих с «git fetch». Документированы ранее не упомянутые подобные опции и обеспечена передача в «git fetch» пропущенных опций.
  • В команду «git rebase» добавлена опция «—no-gpg-sign» для переопределения настройки «commit.gpgSign».
  • В «git format-patch» добавлена возможность отображения заголовков «From:» и «Subject:» в неизменном виде, без преобразования символов, отсутствующих в кодировке ASCII.
  • В «git log» добавлена опция «—show-pulls», позволяющая просмотреть не только коммиты в которых было выполнено изменения, но и коммит для слияния этих изменений из отдельной ветки.
  • Унифицирована обработка интерактивного ввода во всех компонентах и добавлен вызов fflush() после показа приглашения ввода, но перед операцией чтения.
  • В «git rebase» разрешено без предварительного выполнения операции «checkout» повторно применить все локальные коммиты, даже если некоторые из них ранее были переданы в upstream.
  • Значение конфигурационной переменной ‘pack.useSparse’ заменено на ‘true’ для включения по умолчанию оптимизаций, ранее преподносимых как экспериментальные.
  • В «git merge» добавлена опция «—autostash».
  • Улучшен интерфейс «sparse-checkout».
  • В «git update-ref —stdin» добавлено несколько новых действий,
    позволяющих напрямую контролировать транзакции обновления ссылок, например, для реализации двухэтапного атомарного обновления ссылок в нескольких репозиториях.

  • Добавлены шаблоны userdiff для документов Markdown.
  • Убрано ограничение на исключение всех путей в шаблонах sparse-checkout, приводящих к пустому рабочему дереву.
  • Операция «git restore —staged —worktree» теперь по умолчанию использует содержимое из ветки «HEAD», вместо вывода ошибки.
  • Продолжена работа по переходу на алгоритм хеширования SHA-2 вместо SHA-1.
  • Переработан код для взаимодействия с GnuPG.

Source: opennet.ru

Add a comment