Versiunea de control sursă Git 2.40

După trei luni de dezvoltare, sistemul distribuit de control al surselor Git 2.40 a fost lansat. Git este unul dintre cele mai populare, fiabile și de înaltă performanță sisteme de control al versiunilor, oferind instrumente flexibile de dezvoltare neliniară bazate pe ramificare și îmbinare. Pentru a asigura integritatea istoriei și rezistența la modificări retroactive, în fiecare commit este utilizat hashing implicit al întregului istoric anterior; de asemenea, este posibilă certificarea etichetelor individuale și commit-urilor cu semnăturile digitale ale dezvoltatorilor.

По сравнению с прошлым выпуском в новую версию принято 472 изменения, подготовленные при участии 88 разработчиков, из которых 30 впервые приняли участие в разработке. Основные новшества:

  • В скрипт git-jump добавлена поддержка редактора Emacs, помимо ранее поддерживаемого редактора Vim. Git-jump используется для передачи в текстовый редактор информации о позициях в файле для быстрой навигации и перехода к редактированию кода в определённом месте. Например, git-jump может применяться для переключения в редакторе между строками, полученными в результате разбора конфликтов слияния, оценки различий и выполнения поиска (можно выполнить «git jump grep foo» и затем быстро переключаться между позициями, в которых встречается маска «foo»).
  • В «git cat-file» обеспечена поддержка применения опций «-s» и «—batch-check» вместе с «—use-mailmap» для правильного определения размера объекта с учётом замены идентификатора, осуществлённой на основе привязок к email, заданных в файле mailmap (ранее опция «—use-mailmap» влияла только на вывод содержимого, но не учитывала, что старые и заменённые пары имя/email могут иметь разный размер).
  • В команду «git check-attr» добавлена опция «—source» для выбора дерева с необходимым файлом «.gitattributes», который будет использован для определения актуальных атрибутов в условиях наличия в репозитории нескольких файлов «.gitattributes».
  • Реализация команды «git bisect» переписана на языке Си и встроена в основной исполняемый файл git (ранее команда была реализована в форме Shell-скрипта).
  • Удалена старая реализация команды «git add —interactive», написанная на Shell (в git 2.26 был предложен встроенный вариант на Си, но старая реализация на Shell оставалась доступной и регулировалась настройкой add.interactive.useBuiltin).
  • В команду «git merge-tree» добавлена опция ‘—merge-base’.
  • В команду «git range-diff» добавлена опция «—abbrev=<num>».
  • Добавлена возможность переопределения редактора списков для интерактивного режима команды rebase через выставление переменной GIT_SEQUENCE_EDITOR через команду «git var» по аналогии с «git var GIT_EDITOR».
  • В подсистему учётных записей добавлена поддержка паролей с ограниченным сроком действия.
  • В сценариях автодополнения ввода для Bash реализован режим работы без учёта регистра символов.

Sursa: opennet.ru

Adauga un comentariu