Выпуск распределенной системы управления исходными текстами Git 2.30
29 декабря 2020 года
Доступен выпуск распределенной системы управления исходными текстами Git 2.30.0. Git является одной из самых популярных, надёжных и высокопроизводительных систем управления версиями, предоставляющей гибкие средства нелинейной разработки, базирующиеся на ответвлении и слиянии веток. Для обеспечения целостности истории и устойчивости к изменениям "задним числом" используются неявное хеширование всей предыдущей истории в каждом коммите, также возможно удостоверение цифровыми подписями разработчиков отдельных тегов и коммитов.
По сравнению с прошлым выпуском в новую версию принято 495 изменений, подготовленных при участии 83 разработчиков, из которых 29 впервые приняли участие в разработке. Основные новшества:
- Обновлены шаблоны userdiff для PHP, Rust и CSS. Добавлена поддержка определения функций в bash и POSIX shell.
- В скрипт автодополнения опций командной строки добавлена возможность раскрытия команд, являющихся псевдонимами псевдонимов, а также реализована поддержка параметров "git stash show", аналогичных параметрам "git diff". Обновлены сценарии автодополнения для Zsh.
- В "git worktree list" реализовано отображение признака блокировки рабочих деревьев.
- Продолжено развитие команды "git maintenance", расширенного варианта "git gc".
- В "git push" добавлена опция "--force-if-includes", нацеленная на решение проблемы с потерей коммитов при неправильном использовании команды "git push --force-with-lease[=<ref>]". При указании "--force-if-includes" вместе c "--force-with-lease" выполняется дополнительная проверка актуальности заменяемых коммитов.
- Для "git clone" добавлена настройка clone.defaultremotename, позволяющая определить имя, которое будет использовано для обращения к хосту с которого был клонирован репозиторий.
- Для "git checkout" добавлена настройка checkout.guess, позволяющая настроить применение опции "--guess" по умолчанию.
- Для команды "git diff A...B" предложен более информативный аналог "git diff --merge-base A B".
- В команды семейства "git diff" добавлена опция "-I<regex>" для игнорирования частей, изменения в которых соответствуют заданному шаблону.
- В "git archive" при создании tar.gz разрешено указание уровней сжатия выше "-9".
- Предоставлена возможность настройки размера имён файлов, создаваемых командой "git format-patch" (раньше действовало ограничение в 64 символа).
- В команду "git rev-parse" добавлена опция "--end-of-options", помогающая в скриптах явно отделить параметр с ревизией, например
"git rev-parse --verify -q --end-of-options $rev".
- В "git update-ref --stdin" добавлена возможность обработки нескольких транзакций в одном сеансе.
- В различные подкоманды "git config" добавлена опция "--literal-value", позволяющая передать значение value_regex в форме строки.
- В настройках параметр help.autocorrect теперь может принимать значение 'never' для полного отключения логики определения опечаток в названиях команд (по умолчанию, если указана несуществующая команда, git анализирует типовые опечатки и запускает откорректированную команду, если определён только один вариант замены).
- Продолжено переписывание команды "git bisect" на языке Си.
Источники[править]
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии[править]
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.