Я хотел бы знать, как я мог клонировать только одну ветвь вместо клонирования всего хранилища Git.Клонировать только одну ветвь
ответ
Из анонса Git 1.7.10 (апрель 2012):
git clone
узнал--single-branch
возможность ограничить клонирование в одной отрасли; (сюрприз!) теги, которые не указывают на историю ветки, не извлекаются.
Git фактически позволяет клонировать только одну ветвь, например:
git clone -b mybranch --single-branch git://sub.domain.com/repo.git
Примечание: Также you can add another single branch or "undo" это действие.
Спасибо ,! Если -single-branch дает вам ошибку, просто удалите ее и сохраните -b :) – Braunson
@Brauson, если вы просто положили -b, тогда вы клонируете все ветви и после этого проверяете эту ветку. Это не ожидаемый результат. Поэтому я рекомендую вам, если возможно обновление git до lastest (или> = 1.7.10), и команда не даст ошибку. – shakaran
Кто-нибудь знает, как клонировать две ветки - или добавить еще одну ветвь в единую ветвь клонированного репо? –
Вы можете создать новый репозиторий с
git init
, а затем использовать
git fetch url-to-repo branchname:refs/remotes/origin/branchname
принести только, что один филиал в местную удаленное отслеживании отрасли.
Вы заменили «branchname» на название ветки, которую хотите? –
Теперь у вас есть ветвь удаленного отслеживания, содержащая содержимое ветки из удаленного репо. Вы можете делать с ним все, что хотите, включая создание из него локальной ветви или сброс текущей ветки на нее или что-то еще. –
Я бы посоветовал вам попробовать клонировать весь репозиторий и посмотреть, насколько он увеличивает ваш .dit-subdir. Мое предположение было бы в том, что он будет пренебрежимым в увеличении, даже в очень больших проектах. –
«--single-филиал» переключатель ваш ответа, но он работает только если у вас есть GIT версия 1.8.x и далее, первая проверка
#git --version
Если у вас уже есть GIT версия 1.8 .X установлен, то просто использовать «-b ветвь и --single ветвь» клонировать одну ветвь
#git clone -b branch --single-branch git://github/repository.git
по умолчанию в Ubuntu 12.04/12.10/13.10 и Debian 7 установка мерзавец по умолчанию вар ион 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 теперь будет скачать одну ветвь с сервера.
+1 для быстрых инструкций по обновлению git в более ранних версиях дистрибутивов Debian. –
Небольшое дополнение. Чтобы получить команду add-apt-repository, установите пакет программных свойств - общий пакет, мне также пришлось установить свойства python-software. (Я знаю, что это старый ответ, но он по-прежнему актуальный, по крайней мере, это было для меня!). – Graftak
я сделал с ниже одной команды мерзавца:
git clone [url] -b [branch-name] --single-branch
меня тоже, будет использовать эту команду для клонирования одной ветви – yussan
- 1. Как клонировать одну ветвь в git?
- 2. клонировать только конкретную ветвь для обнаженного репо
- 3. R - Дерево решений имеет только одну ветвь
- 4. Не удается клонировать ветвь развития
- 5. Клонировать ветвь дерева в Neo4J
- 6. Как «клонировать» ветку как одну фиксацию?
- 7. Как проверить одну удаленную ветвь в каталог?
- 8. Клонировать конкретную ветвь svn только в git с историей версии только для этой ветви
- 9. Не удается клонировать общую ветвь репозитория Git
- 10. jgit - клонировать ветвь репо без выписки
- 11. Как клонировать конкретную ветвь в git bitbucket
- 12. Mercurial: клонировать только ветку репозитория
- 13. hook, чтобы ограничить нажатие только на одну ветвь за раз.
- 14. Как только нажать на одну ветвь в Hg?
- 15. Git, как копировать одну ветвь на главную ветвь
- 16. объединить одну локальную ветвь в другую локальную ветвь
- 17. Как мерзавец принести другую ветвь после клонирования одну ветвь
- 18. Git дублировать одну ветвь в другую
- 19. Объединить одну ветвь git к другому
- 20. Git Игнорировать файлы на одну ветвь
- 21. Как клонировать весь репозиторий Github, после клонирования только одной ветки?
- 22. Способ вернуть целую ветвь в одну фиксацию
- 23. hg: как преобразовать одну ветвь subversion
- 24. Объединение нескольких филиалов бесхозными в одну ветвь
- 25. Объединить старую объединенную ветвь в одну историю
- 26. Нажатие файлов на одну ветвь git
- 27. Как клонировать одну базу данных в другую?
- 28. Как клонировать одну директорию всего репозитория Git?
- 29. git создать удаленную ветвь только (без локальной)
- 30. Только мастер-ветвь видна после клонирования Git repo
Что пара другие отметили, очень верно: если нет больших файлов, совершенные в некоторых отраслях и не для других, это на самом деле не собирается сделать большую часть разницы. – Cascabel
@Jefromi: Это действительно имеет значение, когда вы клонируете его. См. Эту ссылку: http://stackoverflow.com/questions/14682245/why-is-the-size-of-the-forked-repository-so-huge- on-github –
@AmolMKulkarni Как я уже сказал два года назад, только если некоторые ветви содержат много данных, которых нет у других. Вопрос, на который вы ссылаетесь, на самом деле не говорит о том, что только одна ветвь меньше - если все эти огромные размеры находятся в общей истории всех ветвей, клонирование одной ветви будет такой же большой. – Cascabel