Релиз распределенной системы управления исходными текстами Git 1.7.10

Представлен релиз распределенной системы управления исходными текстами Git 1.7.10. Git является одной из самых эффективных, надёжных и высокопроизводительных систем управления версиями, предоставляющей гибкие средства нелинейной разработки, базирующиеся на ответвлении и слиянии веток. Для обеспечения целостности истории от изменений задним числом используются криптографические методы, также возможна привязка цифровых подписей разработчиков к тегам и коммитам. Из проектов, разрабатываемых с использованием Git, можно отметить ядро Linux, Perl, Eclipse, GNOME, KDE, Qt, Ruby on Rails, Android, PostgreSQL, X.org,

Некоторые изменения:

  • При выполнении «git merge» отныне вызывается интерактивный редактор для добавления пояснения о результирующем слиянии, по аналогии с «git commit». В случае использования «git merge» в скриптах, для отмены нового поведения следует установить переменную окружения GIT_MERGE_AUTOEDIT в значение «no» или использовать опцию «—no-edit»;
  • В настоящее время, если не указать какие ветки и теги использовать при выполнении «git push», используется правило «matching refs» (push.default=matching), которое выбирает для обновления все внешние ветки и теги с именами, совпадающими с локальными. В будущих версиях Git поведение будет изменено и изменения будут затрагивать только текущую ветку (push.default=upstream или push.default=current);
  • Обновлён интерфейс gitk, например, переработан диалог настройки и добавлена поддержка наглядного сравнения двух коммитов;
  • В «gitweb» реализована подсветка результатов поиска, осуществлено чтение из репозитория только необходимых для текущей задачи данных (а не всех которые могут понадобиться для различных задач), обеспечен вывод списка проектов, размещённых в указанной директории;
  • В HTTP-транспорте реализована поддержка работы через прокси с аутентификацией;
  • В конфигурации добавлена поддержка директивы «include», позволяющей включать в текущую позицию содержимое других файлов;
  • Возможность подключения обязательных к применению фильтров контента;
  • В «git clone» добавлена поддержка опции «—single-branch» для ограничения клонирования одной веткой;
  • При выполнении «git clone» c указанием тега через опцию «—branch» (например, «—branch=v1.0») теперь осуществляется отсоединение HEAD из результирующего репозитория;
  • Вывод «git diff —stat» теперь автоматически подстраивается под широкоформатные терминалы и использует максимально возможную ширину строки;
  • Обновлён фильтр «diff-highlight» из contrib, который теперь генерирует более эстетически приятный вывод;
  • В «fsck» добавлена опция «—no-dangling» для пропуска информации о висящих объектах;
  • В операциях «git log -G» и «git log -S» добавлена поддержка опции «-i» для поиска без учёта регистра символов;
  • В «git push» добавлена опция «—prune» по аналогии с «git fetch»;
  • Содержимое директории, используемой для хранения первичного проекта, обслуживаемого через «git submodule», теперь может быть перенесено в другое место;
  • При выполнении «git tag —list» появилась возможность ограничения вывода только для объекта, указанного через «—points-at object»;
  • Добавлен скрипт «diffall», предназначенный для выполнения за один проход сравнения двух ревизий на уровне содержимого директорий;
  • В «git difftool/mergetool» добавлена поддержка DeltaWalker;
  • Улучшена работа инструментов для интеграции со сторонними системами: «git-p4», «git-svn», «vcs-svn»;
  • Увеличена производительность «git fetch» для репозиториев с чрезмерным числом ссылок, за счёт избавления от ненужных вызовов функций парсинга объектов;
  • В тестовом пакете реализована поддержка параллельного выполнения заданий, что является первым шагом к созданию фреймворка для оценки производительности.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.