The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Выпуск распределенной системы управления исходными текстами ..."
Отправлено opennews, 10-Дек-18 10:34 
Подготовлен (https://lkml.org/lkml/2018/12/9/39) выпуск распределенной системы управления исходными текстами Git 2.20.0 (http://git-scm.com/). Git является одной из самых популярных, надёжных и высокопроизводительных систем управления версиями, предоставляющей гибкие средства нелинейной разработки, базирующиеся на ответвлении и слиянии веток. Для обеспечения целостности истории и устойчивости к изменениям задним числом используются неявное хеширование всей предыдущей истории в каждом коммите, также возможно удостоверение цифровыми подписями разработчиков отдельных тегов и коммитов. По сравнению с прошлым выпуском в новую версию принято  962 изменения, подготовленных при участии  83 разработчика, из которых 26 впервые приняли участие в разработке.

Основные  новшества (https://github.com/git/git/blob/v2.19.0/Documentation/RelNot...):

-  Добавлен код для обнаружения на стадии выполнения "git clone" ситуаций, когда в репозитории встречаются файлы, пути к которым отличаются только регистром символов (например, path/file.txt и /path/File.Txt). Так как не все файловые системы различают регистр символов при выявлении подобных пересечений теперь выводится предупреждение;


-  Добавлена оптимизация, сокращающая объём вычисления при оценке различий: исключён учёт delta-изменений для объектов из одного ответвления с другими объектами, которые не появляются в том же ответвлённом репозитории;


-  В команду "git format-patch" добавлены опции "--interdiff" и "--range-diff" для отображении в примечании списка различий между текущей и предыдущей версиями;


-  В  команду "git mailinfo", которая также используется  в "git am", добавлена возможность восстановления патчей, повреждённый из-за изменения расстановки переводов строки при отправке текста почтовыми клиентом в режиме "format=flawed";

-  Приняты более жёсткие правила в отношении "git push" и "git fetch", в случаях когда обновление ссылки приводит к нарушению согласованности, например, при извлечении и обновлении в существующие тэги. Команда "git fetch" теперь запрещает извлечение в существующие теги при вызове без явного указания опции "--force";

-  В команды "git multi-pack-index" и "git fsck" добавлен код для определения повреждений в индексных файлах ".midx";
-  Добавлен индикатор прогресса при генерации файлов с графом коммитов (commit-graph) и при выполнении "git status" при обновлении индекса.
Данные операции могут занимать достаточно много времени, что требует информирования пользователя для исключения впечатления о зависании;
-  Повышены требования при работе на платформе Windows, в качестве минимальной поддерживаемой версии заявлена  Windows Vista;
-  В скрипты автодополенения ввода, поставляемые в contrib/, добавлена поддержка опций команды  "git stash list". Дополнение для команды "git fetch --multiple" ограничено только именами с внешних хостов;

-  Подсказки, выводимые при помощи команд "git help -a" и "git help -av", разделены и сделаны более понятными новичкам. Вторая команда отличается кроме подробной информации о команде выводом списков альтернативных имён и внешних команд;
-  В команду "git grep" добавлена опция "git grep --recursive", отражающая поведение по умолчанию (обход всего дерева). Команда
"git grep --no-recursive" может рассматриваться как аналог выставления настройки max-depth в значение 0;

-  При отправке push-запроса к репозиторию, в котором используется альтернативное внешнее хранилище для хранения объектов, удалённый обработчик "git receive-pack" передаёт список используемых ссылок на внешнее хранилище для сокращения объёма передаваемых объектов. В случае очень большого числа подобных ссылок, экономия трафика за счёт сокращения числа передаваемых объектов сводится на нет необходимостью передачи списка очень большого размера.  В новой версии добавлены настройки для управления выдачей информации об альтернативных ссылках;

-  Команда "git cmd --help" в случае, если "cmd" является псевдонимом другой команды, теперь не только выводит ссылку на основную команду, но и сразу выводит  подсказку для этой команды;

-  Улучшена работа команды "git p4 unshelve";

-  В команде "rev-list --filter" добавлена поддержка фильтра "tree:0" для исключения всех деревьев;
-  В команде "git send-email" реализовано выявление строк с адресами из всех примечаний, заканчивающихся на "-by". Для отключения нового поведения добавлена опция "--suppress-cc=misc-by" и настройка "sendemail.suppresscc = misc-by";
-  Модернизирована логика выбора имени пользователя и email  на платформе Windows;
-  В "git mergetool" добавлена опция "--[no-]gui", работающая по аналогии с "git difftool";
-  В команду "git rebase -i" добавлена поддержка ключа 'break', который можно добавлять в списки to-do для индикации конца списка до его фактического завершения;

-  Для опции "--pretty=format:" предложены новые заполнители "%GF" и "%GP", показывающие слепки ключей  GPG;
-  Для платформ со свежими версиями библиотеки cURL добавлена настройка http.sslBackend, позволяющая выбрать различные бэкенды для обработки защищённых HTTPS-соединений. В  Windows данная настройка позволяет
переключиться между использованием OpenSSL и Secure Channel;
-  В команду "git send-email" добавлена опция "--smtp-auth=none" для отключения SMTP-аутентификации, даже если в настройках задано имя пользователя для SMTP;
-  Добавлен новый класс файлов конфигурации, прикрепляемых к разным рабочим веткам в одном репозитории (до этого предоставлялась возможность определения глобальных настроек, привязки к домашнему каталогу пользователя и привязки к репозиторию ($GIT_DIR/config));
-  Маска '**', указанная без слеша с одной из сторон, которая считалась некорректной, теперь воспринимается как маска для определения наличия двух символов звёздочка;-  Реализации команд "git submodule update", "git rebase" и "git rebase -i" полностью переписаны на языке Си. Проведена чистка кода, используемого для команд  "git status" и   "git commit --dry-run";-  Обеспечена возможность параллельного чтения индексных файлов для повышения производительности. Увеличена эффективность обхода дерева репозитория при извлечении веток и операциях слияния. Внесены оптимизации при частичном клонировании, связанные с кэшированием.

URL: https://lkml.org/lkml/2018/12/9/39
Новость: https://www.opennet.ru/opennews/art.shtml?num=49751

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру