Как Visual Studio может подключиться к рабочей области Azure DevOps, репозиторий которой находится на GitHub?
Visual Studio может подключиться к проекту DevOps Azure через Team Explorer, добавив новое соединение Team Project.
Подключившись к командному проекту (размещенному в Azure DevOps), можно увидеть рабочие элементы, сборки и многое другое:
Однако существует проблема, когда вышеупомянутый проект в DevOps Azure не использует внутренний Git-репозиторий Azure DevOps, а вместо этого использует внешний репозиторий GitHub.
В Azure DevOps этот внешний репозиторий GitHub был настроен в: " Настройки проекта" -> "Доски" -> соединения GitHub и единицы работы (например, задачи) успешно связаны с коммитами в репозитории GitHub.
Visual Studio поддерживает только внутренний репозиторий Git Team Project, который пуст, поскольку вместо него используется внешний репозиторий GitHub.
Если Visual Studio напрямую подключен к репозиторию GitHub, то все команды Git доступны, но связь с Team Project потеряна, а такие вещи, как "Рабочие элементы", "Сборки" и т. Д., Более недоступны. С другой стороны, при подключении к проекту Azure DevOps Team они доступны, но репо с исходным кодом (в GitHub) больше не доступно.
Оба варианта кажутся взаимоисключающими. Есть ли способ подключиться к командному проекту DevOps Azure при одновременном использовании внешнего репозитория GitHub (вместо неиспользуемого внутреннего репозитория Azure DevOps Azure)?
2 ответа
Здесь есть небольшая хитрость... Много функций в Visual Studio зависит от origin
удаленный. Если есть несколько пультов, Visual Studio включит функциональность поставщика, на который ссылается origin
удаленный. Поэтому, когда в вашем локальном репо имеется несколько удаленных устройств, одно для Github, а другое для Azure Repos, дополнительная функциональность провайдера в origin
пульт активируется. В этом случае вы все равно можете нажать /fetsh/pull с любого пульта.
Так:
- Создайте репозиторий в репозитории Azure (инициализируйте его как голое репо без README или.gitIgnore).
- Клонировать его в Visual Studio из окна подключения
- Из настроек хранилища или командной строки добавьте второй пульт, чтобы указать на ваш проект Github.
- Вытащите содержимое из проекта Github
Или же:
- Создайте репозиторий в репозитории Azure и скопируйте URL-адрес клона
- Переименуйте существующий пульт в вашем локальном git-репозитории в
github
- Добавьте пульт Azure Repos в локальный репозиторий под именем
origin
- Используйте окно Подключиться к проекту..., чтобы подключиться к репозиторию Azure Repos. Затем откройте локальный репозиторий Git из локальных репозиториев.
- Visual Studio должна связать их.
Вы можете игнорировать origin
удаленный. Он служит исключительно Visual Studio, чтобы сообщить ей об активировании функций плат Azure и конвейеров Azure.
Это должно позволить Visual Studio думать, что проект размещен главным образом в DevOps Azure, и вы также сможете использовать GitHub.
Нет. Azure DevOps и GitHub, хотя оба принадлежат Microsoft, являются отдельными службами.