Релиз Git 2.25. Что нового. Linux новости

Релиз Git 2.25. Что нового

0
Лайков: +2
войдите, чтобы ставить лайки

Git 2.25

Git 2.25
Версия:2.25
Дата релиза:13 января 2020
Предыдущий релиз:2.24 от 3 ноября 2019 (пресс-релиз)
Страница:Git

Состоялся релиз распределенной системы управления версиями Git 2.25. Рассмотрим основные изменения в новой версии.

Частичное клонирование

Ведется разработка поддержки частичного клонирования, которое полезно при клонировании очень крупных репозиториев.

При обычном клонировании репозитория выполняется полное копирование всех данных репозитория. Для очень больших репозиториев подобные действия могут быть очень затратными по времени и сетевым ресурсам. Иногда пользователям требуется получить только часть репозитория. Частичное клонирование позволяет выполнить клонирование только необходимых частей репозитория.

Частичное клонирование пока находится в экспериментальной стадии. Некоторые ресурсы, включая GitHub, пока не поддерживают частичное клонирование.

Для частичного клонирования можно использовать команду вида:

git clone --filter=blob:none --no-checkout /git/repository.git
  • Опция --filter задает выборку объектов, которые необходимо клонировать.
  • Опция --no-checkout указывает на то, что не требуется выполнять checkout репозитория. Если же checkout будет выполнен, то отсутствующие файлы (которые мы не хотим клонировать) будут загружены.

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

Если выполнять выборочный checkout «по старому», то можно было бы воспользоваться следующей последовательностью команд:

$ git clone --filter=blob:none --no-checkout /your/repository/here repo
$ cd repo
$ cat >.git/info/sparse-checkout EOF
/*
!/*
EOF
$ git config core.sparseCheckout 1
$ git checkout .

В Git 2.25 ввели новую команду git sparse-checkout, которая значительно упрощает выборочный checkout. Приведенные выше команды можно заменить на следующие:

git clone --filter=blob:none /your/repository/here repo
cd repo && git sparse-checkout init

Что еще нового

  • Ранее, в версии Git 2.22, опция --preserve-merges для команды git rebase объявлена устаревшей. Вместо нее была добавлена новая опция --rebase-merges. В Git 2.25 полностью удалены все упоминания старой опции --preserve-merges
  • Для команд git add, git commit, git reset и других добавлена новая опция --pathspec-from-file
  • Существенно улучшен вывод команды git log --graph
  • И некоторые другие изменения...
0
  • Опубликовано: 18.01.2020

Комментарии

Комментариев пока не было.

Написать комментарий

Ваше имя:
Текст комментария:
  • Уважать других.
  • Не ругаться.
  • Без оскорблений.
  • Без грубости.
  • Не переходить на личности.
  • Писать на русском языке.
  • Без политики.
  • Без флуда.
Правила