Mwepụta nke sistemu njikwa isi mmalite Git 2.23

Ewebata ntọhapụ nke usoro nchịkwa isi iyi ekesa Nnukwu 2.23.0. Git является одной из самых популярных, надёжных и высокопроизводительных систем управления версиями, предоставляющей гибкие средства нелинейной разработки, базирующиеся на ответвлении и слиянии веток. Для обеспечения целостности истории и устойчивости к изменениям задним числом используются неявное хеширование всей предыдущей истории в каждом коммите, также возможно удостоверение цифровыми подписями разработчиков отдельных тегов и коммитов.

По сравнению с прошлым выпуском в новую версию принято 505 изменений, подготовленных при участии 77 разработчиков, из которых 26 впервые приняли участие в разработке. Основные ihe ọhụrụ:

  • Представлены экспериментальные команды «git switch» и «git restore», призванные разделить между собой малосвязанные возможности «git checkout», такие как манипуляция ветками (переключение и создание) и восстановление файлов в рабочей директории («git checkout $commit — $filename») или сразу в staging area («—staging», не имеет аналога в «git checkout»). Стоит отметить, что, в отличие от «git checkout», «git restore» удаляет неотслеживаемые файлы из восстанавливаемых директорий («—no-overlay» по умолчанию).
  • Добавлена опция «git merge —quit», которая, аналогично «—abort», останавливает процесс слияния веток, но оставляет при этом рабочую директорию нетронутой. Данная опция может оказаться полезной в случае, если некоторые из изменений, внесённых в ходе ручного слияния, предпочтительнее оформить в виде отдельного коммита.
  • Команды «git clone», «git fetch» и «git push» теперь учитывают наличие коммитов в связанных репозиториях (ọzọ);
  • agbakwunyere опции «git blame —ignore-rev» и «—ignore-revs-file», позволяющие пропустить коммиты, в которых внесены незначимые правки (например, исправления форматирования);
  • Добавлена опция «git cherry-pick —skip» для пропуска конфликтного коммита (запоминаемый аналог последовательности «git reset && git cherry-pick —continue»);
  • Добавлена настройка status.aheadBehind, фиксирующая опцию «git status —[no-]ahead-behind» на постоянной основе;
  • С данного выпуска «git log» по умолчанию учитывает изменения, внесённые mailmap, аналогично тому, как это уже происходит в git shortlog;
  • Существенно ускорена операция обновления представленного в 2.18 экспериментального кеша графа коммитов (core.commitGraph). Также ускорен git for-each-ref в случае использования нескольких шаблонов и сокращено количество вызовов auto-gc в «git fetch —multiple»;
  • «git branch —list» теперь всегда показывает detached HEAD в самом начале списка независимо от локали.

isi: opennet.ru

Tinye a comment