Google представила вторую версию протокола Git

git v2

В пятницу, 18 мая 2018 года, команда разработчиков Google анонсировала вторую версию протокола Git, которая является важным обновлением проводного протокола. Обновление позволяет пользователю включить на сервере фильтрацию ссылок (ветвей и тегов).

Основные улучшения

В прошлой версии для ответа на команду извлечения сервер перебирал все ссылки в репозитории. Это приводило к увеличению времени выборки, а также влияло на пропускную способность. Использование в Google протокола второй версии в три раза увеличило производительность. Также протокол позволил сократить 8 служебных байтов, отправленных с серверов googlesource.com.

Можно выделить основной перечень улучшений:

  • серверная фильтрация ссылок;
  • легкая расширяемость для новых функций: ref-in-want и извлечение и размещение symref;
  • упрощенная обработка клиента при применении в качестве транспорта HTTP.

Как использовать вторую версию протокола Git

Для использования обновленного протокола нужен обновленный Git и сервер с поддержкой актуальной версии. При этом должны быть включены репозитории на googlesource.com и хранилище с облачными источниками.

Если включить трассировку и запустить команду ls-remote, можно увидеть преимущества версии 2. В сравнении с протоколом предыдущей версии сервер отправляет гораздо меньший набор ссылок:

# Using the original wire protocol
GIT_TRACE_PACKET=1 git -c protocol.version=0 ls-remote https://chromium.googlesource.com/chromium/src.git master
# Using protocol version 2
GIT_TRACE_PACKET=1 git -c protocol.version=2 ls-remote https://chromium.googlesource.com/chromium/src.git master

Более подробная информация о протоколе доступна в спецификации.

Поддержка версии 2 была недавно объединена с ведущей веткой Git. Как ожидается, она станет частью версии Git 2.18.

Ранее компания в своем блоге Google Open Source рассказала об открытии доступа к iOS-фреймворку GTXiLib, который автоматизирует тестирование функций для людей с ограниченными возможностями. Он указывает на такие неполадки, как низкоконтрастный текст, утерянные метки и подсказки.

 

Источник: блог Google Open Source

Ещё интересное для вас:
Тест: чьё это рабочее место? Угадываем айтишников по их столам
Тест: что вы знаете о работе мозга?
Тест: какой язык программирования вам стоит выбрать для изучения?

Вакансии в тему:

Tooligram
Разработчик Node.js / Vue.js
Разработчик Node.js / Vue.js
Tooligram, удаленно, до 150 000 ₽ (до налогов)
Dropwow
PHP-разработчик
PHP-разработчик
Dropwow, Москва, до 130 000 ₽
CallKeeper
JavaScript-разработчик
JavaScript-разработчик
CallKeeper, Москва, от 100 000 до 150 000 ₽
«Сбербанк-Технологии»
Java-программист
Java-программист
Сбербанк-Технологии, Рязань