Есть ли способ, по которому я могу вытащить последнюю фиксацию в подмодуле git? Я пытался добавить boost в качестве подмодуля git в некоторых проектах, но так как репозиторий boost со всем включенным действительно тяжелым весом, я хотел только обновить подмодули до последней фиксации и не вытащить все коммиты. Возможно ли это?
Например, когда я делаю
git submodule update --init --recursive
Все подмодули повышения подтягиваются со всеми их коммитами. Могу ли я попросить подмодулировать последнее коммитирование вместо того, чтобы вытащить все изменения?
Примечание Неглубокие клоны с флагом --depth
не работают, потому что он только вытягивает последнюю фиксацию, а последняя фиксация имеет только изменения, сделанные в этой фиксации, поэтому репозиторий не находится в правильное состояние.
Примечание git archive
(как указано в ответе ниже), похоже, не работает, когда я пытаюсь выполнить следующую последовательность команд
mkdir temp-git-test
cd temp-git-test
git init
git submodule add --depth 1 https://github.com/boostorg/boost
cd boost
git archive --format=tar HEAD --output ../boost.tar.gz
cd ..
tar -xzvf boost.tar.gz
Вывод расстегнутого репо совпадает с подмодулем. Я что-то делаю неправильно?