#git #teamcity
#git #teamcity
Вопрос:
Я настраиваю свою сборку в TeamCity, и для этого требуется ssh-путь к репозиторию. Обычно, когда я это делаю, у меня есть один репозиторий для каждой автоматической сборки. Но в моем текущем случае мне нужно иметь несколько автосборок, извлекаемых из одного и того же проекта (я создаю изображения контейнеров).
Это пример ssh, который у меня есть:
ssh://git@ssh.code.mydomain.net/myproject/container-images.git
Но фактический путь, по которому я хочу просмотреть все файлы, находится в:
code.mydomain.net/myproject/container-images/base-build/aspdotnetcore_3.1.10.debian_10.6.build
Есть ли способ указать SSH-путь только к этой папке? (Поэтому я проверяю это специально и только.)
Ответ №1:
Нет, Git не позволяет URL-адресам репозитория указывать конкретную папку для любого протокола. Вы не можете клонировать только определенную папку, поскольку коммиты всегда ссылаются на дерево верхнего уровня. Git должен иметь эти объекты, чтобы обеспечить доступность объектов, о которых вы заботитесь.
У вас есть несколько вариантов:
- Проверьте весь репозиторий.
- Проверьте репозиторий в другом месте и создайте символическую ссылку на нужную папку.
- Клонируйте репозиторий с
--sparse
помощью флага и обновите шаблоны, чтобы извлекать только нужные вам файлы (что вы можете делать сgit sparse-checkout
последними версиями Git).