Phát hành hệ thống kiểm soát nguồn phân tán Git 2.27

Có sẵn phát hành hệ thống kiểm soát nguồn phân tán Git 2.27.0. Git là một trong những hệ thống kiểm soát phiên bản phổ biến, đáng tin cậy và hiệu suất cao nhất, cung cấp các công cụ phát triển phi tuyến tính linh hoạt dựa trên việc phân nhánh và hợp nhất. Để đảm bảo tính toàn vẹn của lịch sử và khả năng chống lại các thay đổi hồi tố, hàm băm ngầm của toàn bộ lịch sử trước đó được sử dụng trong mỗi lần xác nhận; cũng có thể chứng nhận các thẻ riêng lẻ và các lần xác nhận bằng chữ ký điện tử của nhà phát triển.

По сравнению с прошлым выпуском в новую версию принято 537 изменений, подготовленных при участии 71 разработчика, из которых 19 впервые приняли участие в разработке. Основные đổi mới:

  • Отменено реализованное в прошлом выпуске включение по умолчанию phiên bản thứ hai коммуникационного протокола Git, который используется при удалённом подключении клиента к Git-серверу. Протокол признан пока не готовым к использованию по умолчанию из-за выявления скользких моментов, требующих отдельного рассмотрения.
  • Добавлен набор опций для настройки SSL-соединения при обращении через прокси.
  • Расширена информация, выдаваемая при использовании преобразующих фильтров «clean» и «smudge». Например, теперь показывается объект giống cây cối, в котором появляется преобразуемый блоб.
  • Для избежания путаницы в команде «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», вместо вывода ошибки.
  • Công việc tiếp tục chuyển sang thuật toán băm SHA-2 thay vì SHA-1.
  • Переработан код для взаимодействия с GnuPG.

Nguồn: opennet.ru

Thêm một lời nhận xét