Релиз распределенной системы управления исходными текстами Git 1.7.7
Представлен релиз распределенной системы управления исходными текстами Git 1.7.7. Из-за недоступности инфраструктуры kernel.org, код нового релиза временно размещен на хостинге Google Code, копия создана на SourceForge и GitHub. В качестве подтверждения, что релиз не подделка, мэйнтейнер проекта Junio C Hamano указал на необходимость проверки цифровой подписи.Некоторые изменения:
- Скрипты подготовлены для интернационализации и локализации (i18n/l10n);
- Обновлены порты для Interix, Cygwin и Minix;
- Разнообразные обновления для git-p4 (в contrib/), fast-import и git-svn;
- Gitweb теперь в первую очередь пытается прочитать файл конфигурации /etc/gitweb-common.conf и уже потом gitweb_config.perl и /etc/gitweb.conf;
- При выполнении команды "git am" (загрузка серии патчей из почтового ящика) в связанную команду "git apply" теперь передается содержимое опции "--exclude=path";
- "git am" теперь нормально обрабатывает наличие пустых строк перед содержимым mbox-файла;
- В "git archive" можно использовать gzip для формирования "archive.tar.gz";
- "git bisect" можно использовать для незаполненных репозиториев;
- Длина сокращенных имен объектов в выводе "git branch -v" выбирается на основании переменной конфигурации core.abbrev;
- Для "git check-attr" в командной строке могут быть заданы относительные файловые пути;
- В "git check-attr" добавлена поддержка опции "--all" для вывода списка атрибутов для заданного пути;
- Существенно уменьшено потреблением памяти при выполнении "git checkout". В "git checkout" реализована потоковая обработка данных из хранилища объектов, при которой не требуется предварительное чтение содержимого файлов в память;
- В "git clone" добавлена поддержка опции "--config key=value" для установки параметров конфигурации репозитория, влияющих на выполнение начального checkout;
- Использование "git commit пути..." дает возможность обработать относительные файловые пути, ссылающиеся за пределы текущей поддиректории;
- Для ограничения вывода "git diff --stat" добавлена опция "--stat-count";
- В "git diff" добавлена опция "--histogram" для использования альтернативного метода генерации diff, заимствованного у jgit и отличающегося более высокой производительностью;
- "git fetch", "git push" и подобные им команды более не выводят сообщения об ошибках соединения для адресов, к которым не удалось подключиться, если соединение хоть с одним адресом было успешным;
- В "git grep" добавлены опции "--break" и "--heading", позволяющие сформировать вывод в стиле утилиты "ack". Также в "git grep" добавлена опция "-W" при которой вывод формируется с учетом контекста;
- В "git log" и подобных команд добавлена опция "--decorate", при которой цветом выделяются привитые (grafted) и замененные коммиты;
- В реализацию стратегии рекурсивного слияния внесено достаточно много исправлений, характерных для ситуаций, редких для реальных проектов;
- В "git stash" добавлена опция "--include-untracked";
- В "git push" теперь можно использовать опцию "--recurse-submodules=check" для отказа от выполнения операции push для супермодуля, если один из коммитов для его субмодулей не может быть отправлен;
- "git upload-pack" и "git receive-pack" теперь могут делать вид, что только подмножество ссылок присутствует в репозитории, что может быть полезно при передаче содержимого нескольких мелких репозиториев в единый репозиторий;
- "git verify-pack" переписан для использования механизма "index-pack", который более эффективен при чтении объектов из пакетов;
- Попытка запуска тестовых скриптов из состава gitweb теперь осуществляется даже при отсутствии Perl-модулей, связанных с поддержкой CGI.
© OpenNet