Потяните обновления с помощью git после клонирования с --depth 1
Сегодня утром я сделал неглубокий клон источников Linux
git clone --depth 1 https://github.com/torvalds/linux.git
в результате чего появилась папка linux
из 851Mb.
Теперь я хотел бы сделать последние изменения, но
git pull
начинается кажущаяся огромная загрузка. После 60Mb я нахожусь на 3%, который экстраполируется на 2Gb. Тем не менее, 5 коммит, так как мой клон меняет только кучу строк.
Я что-то делаю неправильно? Что такое 2Gb, который пытается загрузить git
?
Ответы
Ответ 1
Я думаю, что вы можете использовать --depth 1
в git pull
тоже, поэтому он получает именно то, что необходимо для новейшей фиксации в репозитории.
Я не знаю, не по умолчанию ли поведение по умолчанию, потому что мой git help pull
показывает эту опцию:
git pull --unshallow
или
git fetch --unshallow
- unshallow Преобразуйте мелкий репозиторий в полный, удалив все ограничения, наложенные мелкими репозиториями.
Я запускаю git version 1.8.5.2 (Apple Git-48)
, и, возможно, это какое-то новое поведение и немного меняется между версиями.
Ответ 2
Может ли любой из новых коммитов быть слиянием-коммитами, указывающими на коммиты, отсутствующие в вашем дереве? Возможно, --depth 1000
будет работать лучше и все еще будет достаточно маленьким.