Как каждый клонирует репозиторий мерзавца только с неосновным ответвлением?

Что точно является неправильным с (ранее упомянутый)

ширина: 0 height:0 видимости: скрытый

7
задан Trey Piepmeier 18 August 2009 в 14:00
поделиться

2 ответа

git clone всегда клонирует весь репозиторий, если вы не укажете параметр - depth , который ограничивает репозиторий до последней n ] ревизий (так называемый «мелкий клон»).

Однако вы можете создать локальный репозиторий и использовать git fetch только для получения частей удаленного репозитория.

cd /path/foo
git init
git remote add origin <some url>
git fetch origin <some branch>

Это будет дублировать большинство того, что делает git clone , но ограничивает его ветвью (ветками), которые вы указываете в командной строке. (Я не уверен в дальнейших деталях, таких как отслеживание ветвей, тегов и т. Д.)

9
ответ дан 6 December 2019 в 21:17
поделиться

В заголовке и резюме вашего вопроса задаются два разных вопроса, потому что, как заметил Бомб, клон всегда получает весь контент, если не использовать параметр - depth .

Я не уверен, что вы на самом деле хотите, но другой вариант - клонировать с флагом - no-checkout (или -n ). По умолчанию git проверяет ветку по умолчанию для репозитория (которая определяется ссылкой HEAD в удаленном репозитории - это не всегда master ). Если вы используете флаг -n git не будет проверять ветку за вас, вы можете просто проверить то, что хотите:

git clone -n <some url> foo
cd foo
git checkout <some branch>
3
ответ дан 6 December 2019 в 21:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: