Как Visual Studio может подключиться к рабочей области Azure DevOps, репозиторий которой находится на GitHub? - PullRequest
2 голосов
/ 08 июня 2019

Visual Studio может подключиться к проекту DevOps Azure через Team Explorer, добавив новое соединение Team Project.

При подключении к командному проекту (размещенному в DevOps Azure) можно просматривать рабочие элементы, сборки и многое другое:

Team Explorer options for a connected Team Project

Однако существует проблема, когда вышеупомянутый проект в DevOps Azure не использует внутренний репозиторий Git AzO 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 ]

1 голос
/ 08 июня 2019

Здесь есть небольшая хитрость ... Много функций в 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
  • Используйте окно Connect to project ... для подключения к репозиторию Azure Repos. Затем откройте локальный репозиторий Git из локальных репозиториев.
  • Visual Studio должна связать их вместе.

Вы можете игнорировать origin пульт дистанционного управления. Он служит исключительно Visual Studio, чтобы сообщить ему об активировании функций плат Azure и конвейеров Azure.

Это должно позволить Visual Studio думать, что проект размещен в первую очередь на DevOps Azure, и вы также сможете использовать GitHub.

0 голосов
/ 08 июня 2019

Нет. Хотя Azure DevOps и GitHub принадлежат Microsoft, они являются отдельными службами.

...