Hudson - Git - клонировать только нужную ветку
Можно ли клонировать только одну ветку git в hudson? Версия Hudson 2.2.0 с git-плагином версии 2.2.0 клонирует весь указанный проект, занимая много места (который, как ожидается, будет расти вечно)
Заранее спасибо.
4 ответа
Конфигурирование refspec в плагине hudson-git для следующего значения, похоже, работает:
+refs/heads/master:refs/remotes/origin/master
Не напрямую, но если вы можете адаптировать сам плагин Hudson Git, вы можете клонировать только ветку с помощью правильной команды git:
Смотрите " Как клонировать одну ветку в git?"
Это возможно начиная с git1.7.10:
git clone <url> --branch <branch> --single-branch <folder>
Обратите внимание, что плагин git 2.0 позволит указать правильную ветвь для клонирования:
Git "ветвь" - это просто 40-байтовая закладка, указывающая на позицию в истории проекта - если только ваши ветви не сильно расходятся, вы не сэкономите много места, так как в любом случае вы будете загружать полную историю.
Если целью является экономия места, возможно, используйте опцию "мелкий клон"? Это загрузит только один слой истории, а не все.
Вы путаете clone
с checkout
, Clone клонирует репозиторий, и вот как работает git, checkout переключит вас на данную ветку. Git распространяется таким образом, весь репозиторий копируется с клоном на ваш локальный компьютер. Таким образом, вы можете получить доступ к любой ветке, коммиту, метке, когда-либо нажатой.