Подключаемый модуль Azure DevOps для IntelliJ IDEA и Android Studio

Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019

IntelliJ IDEA — это интегрированная среда разработки, созданная JetBrains. Вы можете узнать больше об этом на https://www.jetbrains.com/idea/. Подключаемый модуль Azure DevOps для IntelliJ позволяет подключаться к репозиториям Git в Azure DevOps Services и Team Foundation Server (TFS) в простом и интуитивно понятном виде. Этот подключаемый модуль также можно использовать для импорта проектов в Azure Repos или создания запросов на вытягивание в репозитории Azure DevOps Services/TFS Git.

В этом руководстве показано, как создать репозиторий Git с помощью веб-портала Azure DevOps Services, добавить пример кода, а затем клонировать репозиторий и создать запросы на вытягивание из IntelliJ IDEA.

Необходимые компоненты

Чтобы выполнить действия, описанные в этом руководстве, вам потребуется:

  • Организация в Azure DevOps. Если у вас нет организации, вы можете зарегистрироваться бесплатно. Каждая организация включает бесплатные, неограниченные частные репозитории Git.
  • IntelliJ IDEA, установленная на компьютере. Если у вас этого нет, получите IntelliJ IDEA.
  • Подключаемый модуль Azure DevOps для IntelliJ. См . страницу загрузки подключаемого модуля IntelliJ для инструкций по установке. Этот подключаемый модуль совместим с выпусками IntelliJ IDEA Ultimate и Community, Android Studio, RubyMine, WebStorm, PhpStorm, PyCharm, AppCode, MPS, 0xDBE и CLion.
  • Средства командной строки Git.
    • Сведения об установке Git для Windows, включая диспетчер учетных данных Git, см. в статье "Установка диспетчера учетных данных Git".
    • Чтобы установить Git для macOS и Linux, см . git-scm.com.

Создание репозитория

  1. Перейдите к проекту в Azure DevOps, перейдя по адресу https://dev.azure.com/{your organization} и выбрав имя проекта. Вы можете выбрать его в списке "Все проекты" или в списке "Последние проекты", если вы недавно получили доступ к нему.

    Выбор проекта

    Примечание.

    При использовании Azure DevOps Services формат URL-адреса проекта — dev.azure.com/{your organization}/{your project}это формат. Однако предыдущий формат, ссылающийся на visualstudio.com формат, по-прежнему поддерживается. Дополнительные сведения см. в статье "Знакомство с Azure DevOps" для переключения существующих организаций на использование нового URL-адреса доменного имени.

  2. В области "Проект" на веб-портале выберите код, а затем щелкните раскрывающийся список рядом с текущим именем репозитория и выберите новый репозиторий.

    Выбор нового репозитория на веб-портале

  3. В диалоговом окне "Создание нового репозитория" убедитесь, что Git является типом репозитория, введите DeepSpace для нового имени репозитория и нажмите кнопку "Создать".

    Настройка параметров нового репозитория в диалоговом окне

Добавление примера кода в репозиторий

  1. Выберите "Клонировать " в правом верхнем углу окна "Код" и скопируйте URL-адрес клонирования.

    Получение URL-адреса клона

  2. Откройте командное окно Git (Git Bash в Git для Windows), перейдите в папку, в которой требуется код из репозитория, хранящегося на компьютере, и запустите git clone путь, скопированный из URL-адреса клонирования на предыдущем шаге, как показано в следующем примере.

    git clone https://dev.azure.com/contoso-ltd/MyFirstProject/_git/DeepSpace
    
  3. Перейдите в папку DeepSpace, выполнив следующую команду.

    cd DeepSpace
    

    Сохраните это окно открытым, так как вы будете использовать его для последующих шагов.

  4. Скачайте пример кода DeepSpace и извлеките его в локальный каталог на компьютере, где вы клонировали репозиторий DeepSpace.

  5. Вернитесь в командное окно Git и выполните следующую команду, которая фиксирует примеры файлов кода в локальном репозитории.

    git add --all
    

    Вы можете увидеть некоторые предупреждения о том, что каналы строк будут заменены на каналы возвращаемой строки каретки (т. е. предупреждение: LF будет заменен CRLF). Эти предупреждения можно игнорировать.

  6. Зафиксируйте файлы в локальном репозитории, выполнив следующую команду.

    git commit -m "Committing DeepSpace sample files"
    
  7. Выполните следующую команду, чтобы отправить фиксацию примеров файлов DeepSpace в репозиторий Azure Repos DeepSpace.

    git push
    
  8. Вернитесь на веб-портал Azure DevOps Services и обновите его, и вы увидите добавленные файлы.

    Файлы DeepSpace

Клонирование репозитория в IntelliJ

Теперь, когда у нас есть репозиторий Git с некоторыми примерами кода, давайте рассмотрим, как работать с кодом из IntelliJ IDEA. Чтобы клонировать репозиторий VSTS в IntelliJ, очень просто. Вам даже не нужно знать URL-адрес репозитория.

  1. Откройте IntelliJ IDEA и выберите "Извлечь из системы управления версиями" , а затем выберите VSTS Git.

    Клонирование репозитория

  2. Далее просто войдите в Azure DevOps Services...

    Вход в Azure DevOps Services

  3. При нажатии кнопки "Вход" вы увидите стандартный пользовательский интерфейс входа в Azure DevOps Services. После входа вы увидите список всех репозиториев, к которых у вас есть доступ к Azure DevOps Services. Выберите правильный репозиторий, DeepSpace и нажмите кнопку "Клонировать ". (Вы также можете выбрать, где на жестком диске клонируется репозиторий, изменив родительский каталог.)

    Снимок экрана: клонирование репозитория.

  4. После завершения клона IntelliJ попросит вас открыть проект. Нажмите кнопку "Да ", и вы должны в конечном итоге открыть проект DeepSpace в IntelliJ IDEA.

    Проект DeepSpace

Внесение некоторых изменений в IntelliJ

  1. Сначала убедитесь, что проект строится с помощью проекта Build>Make. Если вам будет предложено добавить пакет SDK для проекта, просто добавьте последнюю версию Java JDK, установленную на компьютере.

    Если вы хотите запустить проект, чтобы увидеть, что это делает, можно сделать следующее:

    1. В корневой папке DeepSpace в репозитории Git выполните команду mvn jetty:run (для этого требуется установить maven).
    2. В браузере перейдите в раздел http://localhost:3030/

    Вы должны увидеть звезды и планеты, летающие! Если вы внимательно посмотрите, вы можете заметить, что Земля не летает.

  2. В нашем примере DeepSpace есть некоторые разделы кода, которые были закомментированы. Если открыть src/main/java/com.microsoft.tfs.demo/ImageService.java файл в IntelliJ, вы увидите один из разделов.

    Земля закомментирована

    Давайте исправим этот раздел кода локально. Как правило, при работе в репозитории Git необходимо создать ветвь для работы и зафиксировать ее. Создайте ветвь с помощью IntelliJ с помощью встроенного окна ветвей VCS>Git.> При появлении запроса используйте имя ветви fixBugs. После того как у нас есть ветвь для внесения изменений, мы можем раскомментировать код и перестроить проект. Если вы следуйте приведенным выше инструкциям, чтобы снова запустить программу, вы увидите, что Земля летит.

  3. Теперь, когда наши изменения созданы и протестированы, мы можем зафиксировать их локально с помощью меню "Изменения фиксации VCS>". В диалоговом окне фиксации появится кнопка VSTS над текстовым полем фиксации. Нажмите эту кнопку, чтобы просмотреть список рабочих элементов, назначенных вам. Нажмите кнопку "Добавить отсутствующий рабочий элемент Земли " и нажмите кнопку "ОК". Появится текстовое поле сообщения фиксации, заполненное типом, номером и заголовком рабочего элемента. При этом рабочий элемент связывается с этой фиксацией для трассировки в будущем.

    Фиксация Земли

    Обратите внимание, что это изменение выполняется только локально; Он еще не был изменен в репозитории Azure DevOps Services.

Создание запроса на вытягивание

Вы можете отправить локальную ветвь на сервер и создать запрос на вытягивание для проверки команды. Наш подключаемый модуль помогает создать запрос на вытягивание на основе текущего контекста в IntelliJ. Это позволяет сохранить несколько шагов и исключить необходимость переключиться в браузер для создания запроса на вытягивание.

Для этого просто выберите VCS>Git>Create Pull Request. Откроется диалоговое окно "Создать запрос на вытягивание". В этом диалоговом окне содержится много сведений, включая файлы, которые изменились, и фиксации, которые будут отправляться. Вы можете предоставить запрос на вытягивание заголовок и описание.

Создать запрос на вытягивание

После нажатия кнопки "Создать запрос на вытягивание" необходимо получить уведомление о создании запроса на вытягивание. Она также содержит ссылку на запрос на вытягивание в случае добавления определенных рецензентов или комментариев. После завершения проверки кода можно объединить запрос на вытягивание в основную ветвь.

Проверка состояния сборки

После объединения изменений в основную ветвь можно проверка, если сборка CI успешно выполнена в IntelliJ. В правом нижнем углу есть значок, отображающий состояние сборки. Если вы видите зеленый проверка марк, это означает, что сборка выполнена успешно. Если вы видите красный X, то сбой сборки. Если вы видите серый вопросительный знак, сборка не найдена или учетные данные могут быть просроченными.

Значки состояния сборки

Щелкните значок для получения дополнительных параметров, таких как просмотр сведений о сборке, очередь новой сборки и обновление состояния вручную.

Меню состояния сборки

Просмотр запросов на вытягивание и рабочих элементов

В меню "Управление версиями" вкладка "Запрос на вытягивание" и вкладка "Рабочие элементы" существуют, чтобы легко просматривать необходимые сведения без выхода из интегрированной среды разработки. На вкладке "Запрос на вытягивание" отображаются текущие запросы на вытягивание, созданные вами и назначенные вам вместе с их состоянием. На вкладке также можно создавать запросы на вытягивание или отказаться от нее.

Меню запроса на вытягивание

На вкладке "Рабочие элементы" можно просмотреть рабочие элементы на основе созданных запросов или использования запроса по умолчанию для просмотра рабочих элементов, назначенных вам. Вы также можете создать ветвь на основе рабочего элемента, чтобы связать рабочий элемент с ветвью для будущих целей трассировки.

Меню рабочих элементов

Next Steps