Клонировать только одну ветвь
Я хотел бы знать, как я мог клонировать только одну ветвь вместо клонирования всего репозитория Git.
Ответы
Ответ 1
Из объявления Git 1.7.10 (апрель 2012):
-
git clone
узнал --single-branch
вариант ограничения клонирования на одну ветвь (сюрприз!); теги, которые не указывают на историю ветки, не извлекаются.
Git фактически позволяет клонировать только одну ветвь, например:
git clone -b mybranch --single-branch git://sub.domain.com/repo.git
Примечание: Также вы можете добавить еще одну ветвь или "отменить" это действие.
Ответ 2
Вы можете создать новое репо с
git init
а затем используйте
git fetch url-to-repo branchname:refs/remotes/origin/branchname
чтобы извлечь только одну ветвь в локальную ветвь удаленного отслеживания.
Ответ 3
" - однопроводная" - это ваш ответ, но он работает только, если у вас есть git версия 1.8.X и далее, сначала проверьте
#git --version
Если у вас уже установлена git версия 1.8.X, просто используйте "-b-ветку" и "одну ветвь", чтобы клонировать одну ветвь
#git clone -b branch --single-branch git://github/repository.git
По умолчанию в Ubuntu 12.04/12.10/13.10 и Debian 7 установка по умолчанию git выполняется только для версии 1.7.x, где - однопроводная - неизвестный коммутатор. В этом случае вам нужно установить более новый git сначала из не-default ppa, как показано ниже.
sudo add-apt-repository ppa:pdoes/ppa
sudo apt-get update
sudo apt-get install git
git --version
Как только 1.8.X установлен, просто выполните:
git clone -b branch --single-branch git://github/repository.git
Git теперь будет загружать только одну ветку с сервера.
Ответ 4
Я выполнил следующую команду git:
git clone [url] -b [branch-name] --single-branch