Рубрики
Uncategorized

Работа с функцией филиала рабочего процесса и потянутыми запросами

Работа с функцией филиала рабочего процесса и запросы на потяну, выходя из части 1 этого … Теги с DevOps, Azure, Git, начинающим.

Начало работы с Git и Azure DEVOPS (3 часть серии)

Вернуться к Часть 1 Такого руководства вы были одиноким разработчиком, клонируя ваш репозиторий, делая изменения локально и выталкивая их обратно на ваш пульт дистанционного управления. Что происходит, когда другие разработчики должны внести изменения, в то же время, как вы, и в том же репозитории? Как вы убедитесь, что изменения следуют за вашим стандартам кодирования и имеют достаточное качество? Предполагается, что реализация рабочего процесса Git имеет решающее значение, чтобы убедиться, что изменения рассматриваются и объединяются обратно в основную линию кода. Общий рабочий процесс GIT для команды имеет следующие шаги:

  • Создать филиал за изменения, которые вы собираетесь сделать. Филиал — это изолированная версия кода, которую вы можете работать на автономном режиме, не влияя на другие разработчики в вашей команде. Филиал, как правило, будет для новой функции или исправления дефекта.

  • Совершать Изменения в вашей ветке локально. Вы можете отслеживать свою историю Compare локально, пока вы работаете.

  • Толчок Ваши изменения в удаленном репозитории, в случае этого руководства, Azure DevOps.

  • Создать Потянуть запрос Так что один или несколько людей в вашей команде могут просмотреть ваши изменения.

  • Обзор запрос на тягу. Один или несколько членов команды выполняют проверку качества на коде. Критерии проверки этих изменений часто будут выложены в контрольном списке кода, которые могут включать стандарты кодирования вашей команды или организации.

  • Полный запрос на тягу. Участники команды, которые необходимы для просмотра ваших изменений, согласны с тем, что критерии для изменений были выполнены. Запрос на тягу завершен, и изменения объединены в основную линию кода — Мастер филиал.

  • Удалить филиал. Как только изменения изменений и истории объединены, это хорошее уборку, чтобы удалить ветку.

Этот рабочий процесс часто называют Особенности филиала рабочего процесса или Тема ветвей рабочий процесс Отказ

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

Предварительные условия

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

  • Azure подписка , вы можете создать бесплатный аккаунт.

  • Azure DevOps Организация Базовый план начинается с первых пяти пользователей бесплатно.

  • Местная установка Визуальный студийный код (VSCode)

  • Местная установка Гит после Установить Руководство для вашей ОС. Если вы используете Windows, убедитесь, что коробка проверяется на Включить Git Commental Manager Отказ

    Если вы установили VSCode перед Git, вам также будет представлен этот вариант:

    Это позволяет запустить VSCode в качестве редактора кода по умолчанию или разницу, прямо из GIT в командной строке. Пожалуйста, оставьте как VSCode для этого руководства, вы можете переустановить позже, чтобы выбрать другой IDE.

  • Azure DevOps Project Отказ Проверьте Часть 1 Из этого блога вы будете использовать проект Azure DEVOPS и REPO, созданный на шаге 5.

Шаг 1 — Настройка филиальных политик в Azure Repos

Вы можете использовать филиальные политики в Azure DEVOPS, чтобы установить правила, которые необходимо следовать при работе с ветвями:

  • Требовать кода рецензентов

  • Предел, который может работать на ветвях

  • Гарантия изменений построить перед объединением мастера

Это все примеры для филиалов. Вы собираетесь исследовать Требуют кода рецензентов Отказ

Открыть Azure DevOps и откройте проект DotnetCoRedemo, который вы создали в Часть 1 этой серии. Наведите курсор на Репо Пункт меню слева, когда меню выскакивается, нажмите Филиалы Отказ

По умолчанию на этом экране — показать все ветви, которые вы создали, поскольку фильтр «шахта» был автоматически выбран наверху. Вы еще не создали филиал, поэтому будет показан только главная ветвь, у всех пользователей есть главная ветвь под «шахтой». Переместите мышь справа от звезды (что означает, что это ветвь по умолчанию), и будет отображаться три точечное меню:

Нажмите на Контекстное меню и выберите Филиала политики внизу меню.

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

Чем чаще используемые варианты филиалов являются:

  • Требуется минимальное количество рецензентов — Когда выдается запрос на тягу, вы можете установить количество рецензентов, которые должны Утвердить изменения до изменений объединяются обратно в ветку. Вы также можете установить политику такой, что рецензент не может быть человеком, который проверил код. Это гарантирует, что более чем один набор глаз проходит через ваш код, увеличивая качество и наличие ошибок, прежде чем код попадает в QA.

  • Проверьте наличие связанных рабочих предметов — Это связывает запрос на тягу к одному или нескольким рабочие предметы Отказ Рабочий элемент — это блок работы Azure Roards, например, ошибка, функция или задача. Когда эта опция включена, комментарии к коммитариям в запросе на тягу проверяются для номеров рабочих элементов. Если никто не найден, запрос на тягу может быть заблокирован или отображается предупреждающее сообщение.

  • Проверьте наличие комментариев Разрешение — Комментарий может быть размещен на запросе на потяну. Это часто бывает, если рецензент требует ясности в коде в запросе на тягу, или если стандарты не выполняются. Проверка этой опции требует, чтобы все комментарию были разрешены, блокируя завершение запроса на тягу. Это также может быть установлено на необязательно, отображение предупреждения, если комментарии все еще должны быть разрешены, но запрос на тягу будет завершен.

Для этого примера галочка Требуется минимальное количество рецензентов

Установите рецензенты на 2, и отметьте Загласители могут одобрить свои собственные изменения Отказ На практике вряд ли этот ящик будет отмечен, команда не хочет, чтобы человек, который написал код, чтобы просмотреть его. Вы устанавливаете его в этом руководстве, чтобы уменьшить сложность примера. После завершения нажмите Сохранить изменения на вершине.

Мастер-филиал теперь требует от двух членов команды, чтобы одобрить запрос на тягу до того, как изменения могут быть объединены обратно на мастеру. Однако в данный момент у вас есть только одна команда с одним членом команды в этом проекте. Вы можете проверить это, ударяя настроек проекта COG в левом нижнем углу, то Команды В меню настроек проекта:

В списке есть только одна команда, команда проекта по умолчанию. Это было создано, когда проект был создан. Номер под Члены Столбец показывает, сколько членов команды в этой команде.

На следующем шаге вы добавите еще один член команды, добавив пользователей в Azure AD и подключив Adure AD для вашей организации Azure DevOps.

Шаг 2 — Интегрировать Azure DevOps с Adure AD

На этом шаге вы собираетесь подключить вашу организацию Azure DevOps в Azure Active Directory (Azure AD). Azure AD — это служба управления идентификацией и управлением доступами для Microsoft Cloud Services, включая Azure и Office 365. Azure AD позволяет организации предоставить своим сотрудникам доступ к ресурсам в рамках Лазури. Если вы знакомы с предостамированным Active Directory, Azure AD — это реализация некоторых из собственных функций Active Directory, включая управление пользователями.

Вы добавите нового пользователя в Azure AD, затем добавляю тот же пользователь в Azure DEVOPS, предоставляя, что пользователю разрешения, необходимые для утверждения запроса на тягу.

Во-первых, войдите в Azure Portal Как пользователь, который вы настраиваете в предварительно реквизитах Часть 1 Отказ В панели поиска в верхней части портала начните напечатать Azure Active Directory и нажмите на ресурс, когда отображается список сопоставленных ресурсов:

Это открывает каталог по умолчанию для связанного арендатора Azure. Каталог содержит все пользователи для арендатора. Нажмите Пользователи под Управлять пункт меню:

Если эта аккаунт Azure был создан специально для следующего в этом руководстве, будет только один пользователь, присутствующий в этом каталоге. Это пользователь, который вы вошли в систему, так как при создании арендатора. Хит Новый пользователь К вершине экрана:

В верхней части новой пользовательской страницы теперь у вас будет возможность создать пользователь или пригласить пользователя. Приглашение дает вам возможность предоставлять доступ к пользователям, которые не размещаются в вашем арендате, они не должны быть Azure AD или учетные записи Microsoft, им просто нужен адрес электронной почты. Для этого руководства вы собираетесь добавить пользователя в свой арендатор, так что выберите Создать пользователя

Прокрутите вниз до раздела Identity, здесь вы добавите имя пользователя, также известный как Имя пользователя пользователя и имя для нового пользователя

В Azure Ad и Active Active Directory имя пользователя является уникальным идентификатором для учетной записи. Поэтому запись для Имя пользователя должен быть уникальным для арендатора. Если вы посмотрите на право @ Символ Вы увидите доменное имя по умолчанию для арендатора, это установлено, когда вы вошли и создали этот новый арендатор. Здесь я замаскировал имя арендатора, если бы я вошел в систему как devopsdemo@freemail.com. Мое доменное имя по умолчанию будет devOpsdemofreemail.onmicrosoft.com. Следовательно, вход в систему, когда этот пользователь создан, будет henrykelly@devopsdemofreemail.onmicrosoft.com. . Вы также можете просмотреть доменное имя по умолчанию на домашней странице для Azure AD.

Минимальные значения для создания пользователя являются Имя пользователя и Имя , заполните их, а затем отметьте Показать пароль Отказ Примите заметку этого пароля, вам понадобится это при входе в систему в качестве пользователя в первый раз. Как только минимальные значения введены правильно, Создать Кнопка будет активироваться внизу влево. Вам не нужно ничего менять на этой странице, поэтому нажмите Создать Отказ

Ваш недавно созданный пользователь перечислен в каталоге. Обратите внимание, что Источник говорит Azure Active Directory. Это означает, что этот пользователь аутентифицируется на учетной записи Azure AD, принадлежащей этому Active Directory. Если вы выбрали Пригласите пользователя Несколько шагов назад это скажет внешний Azure Active Directory.

Теперь вам нужно проверить, вы можете войти в систему с этим пользователем. Откройте другой браузер, чтобы убедиться, что вы не используете кэшированные учетные данные. Войдите в Azure Portal С вашим новым пользователем:

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

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

Ваш пользователь был добавлен правильно. На данный момент пользователь находится только пользователь Azure AD, у пользователя нет доступа к Azure DEVOPS. Переключитесь на Azure DevOps Используя вашу оригинальную учетную запись пользователя, нажав настроить Azure DEVOPS в предварительном реквизисах.

Чтобы добавить у пользователей на Azure Devops, вы собираетесь интегрировать Azure AD. Нажмите на значок Azure DevOps в правом верхнем углу, это приведет вас к домашней странице организации Azure DEVOPS. Нажмите Настройки организации внизу влево.

Это покажет вам настройки, которые влияют на всю организацию DevOps. Мы хотим интегрировать рекламу Azure, поэтому нажмите Azure Active Directory В меню слева:

Подключение к Azure Отображается экран AD, нажмите Connect Directory.

На следующем экране вы можете выбрать Azure Active Directory, который подключит организацию Azure DEVOPS. Пользователь, который вы зарегистрированы в соответствии с созданием организации и арендатора Azure, поэтому вы можете выбрать «каталог по умолчанию» в раскрывающемся списке, чтобы связать два.

Вы можете подключить каталог к организации Azure DEVOPS, которая не была создана тем же пользователем, пользователь должен быть Член Azure AD и администратора или владельца организации Azure DEVOPS, см. Это Статья Microsoft Docs Чтобы получить больше информации.

Обратите внимание на желтую предупреждающую коробку, это не будет отображаться при выборе вашего Acture Active Directory. Это отображается, поскольку вы пригласили пользователей в эту организацию, которые не в каталоге по умолчанию. Вы можете увидеть, какие пользователи это нажав на 1 из 2 участников (ы) ссылка на сайт:

Перечисленные пользователи будут отключены от организации Azure DevOps, если только они не добавляются в качестве членов или гостей в каталог по умолчанию, выбранному для подключения.

Хит Закрыть На отключенном пользователю всплывают, а затем Соединить На всплывающем окном подключения Azure Active Directory. Требуется несколько моментов для подключения каталога и организации, как только это завершено, вы должны увидеть всплывающее окно успеха Connect.

Хит Выйди И снова зайдите снова, нажмите на аккаунт, который вы только что подписали как:

После того, как вы подписали обратно, настройка организации Azure Ad покажет каталог по умолчанию, как подключен:

Теперь Azure AD подключен, вы можете назначить некоторые привилегии доступа ваших пользователей. Оставаться в Настройки организации Нажмите Пользователи В левой панели меню:

Azure AD подключен, но есть только ваш список. Подключение каталога из Azure AD не дает всем пользователям в этом каталоге доступа к организации DEVOPS, она делает их доступными для добавления. Хит Добавить пользователей слева:

В Пользователи Box, начните ввести имя пользователя, которое вы добавили в свой каталог, как только пользователь наклеен в поисках, нажмите на имя, чтобы добавить в Пользователи коробка. Уйти Уровень доступа как Базовый Это дает доход пользователя к большинству функций в организации. Проверьте о уровнях доступа MSDOC для получения дополнительной информации. Теперь нажмите на Добавить в проекты Выпадайте и выберите проект DOTNETCOREEMO:

Оставив Отправить письмо приглашает Ticked отправит письмо всем пользователям, выбранным в добавлении новых пользователей, приглашающих их в организацию Azure DEVOPS.

Теперь, когда проект был выбран для предоставления доступа к Azure DevOps Группы раскрывающийся список был активирован и установлен на Укладки проекта по умолчанию:

Варианты здесь показывают группы для Разрешения по умолчанию и доступ :

  • Читатели проекта — могут просматривать все предметы, но не могут вносить изменения.
  • Вкладчики проекта — могут добавлять, изменять и удалять элементы в проекте.
  • Администраторы проекта — в основном такие же, как вкладчики, но также могут удалять ключевые элементы, такие как рабочие элементы, и делиться объектами по всему проекту, такому как приборные панели и запросы.

Оставьте выделение как Вкладчики проекта

Не ударяйте Add, вернитесь к Пользователи коробка и нажмите знак плюс, чтобы добавить нового пользователя. Введите адрес электронной почты, который не находится в подключенном Adure AD:

Вы все равно можете добавить пользователей за пределами подключенного Azure AD, но им нужно будет нажать кнопку Добавить URL в их приглашении для доступа. Azure DEVOPS дает предупреждение об этом в нижней части Добавить новые пользователи всплывающие окна:

Удалите пользователя Non Azure AD, нажав на крест справа от адреса электронной почты. Нажмите Добавить добавить своего пользователя.

Пользователь теперь перечислен.

Теперь вы можете пойти и проверять доступ пользователя из самого проекта. Нажмите Azure DevOps В левом верхнем углу, затем панель проекта DotnetCore. Нажмите Настройки проекта Внизу влево, чтобы увеличить меню настроек проекта. Теперь нажмите на Разрешения :

Группы разрешений перечислены, в Члены столбец для Авторы Вы можете увидеть два рядом с значком. Если вы наведите курсор значок участников для группы вкладчиков, отображаются аватары для вновь добавленного пользователя и группы разрешений по умолчанию. Нажмите на Авторы :

Это настройки разрешений по умолчанию для вкладчика. Прокрутите вниз, чтобы просмотреть все разрешения, которые вы можете установить. Прокрутите обратно вверх и нажмите Члены в верхней части страницы:

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

Теперь вы можете вернуться к филиалам политики и обновить политику на главной ветке. Используя меню проекта в левой части, наведите курсор на Репо а затем нажмите Филиалы :

Вернитесь в филиальную политику, нажав скрытое меню трех точек В конце Мастер филиал. Затем нажмите Филиала политики :

Прокрутите вниз до нижней части филиальных политик и нажмите Добавьте автоматические рецензенты

В разделе Включите следующие рецензенты Добавьте пользователя, который вы только что дали допусканиям участника, наряду с собой. Уйти Требование политики на Требуется Отказ Обратите внимание на опция Для запросов на тягу, влияющие на эти папки Отказ В этом текстовом поле вы можете установить путь или путь в ветке, которая запускает автоматическое включение конкретных рецензентов. Это дает вам возможность устанавливать старших инженеров в качестве автоматических рецензентов для ключевых областей вашего приложения. Для этого руководства Оставьте настройку по умолчанию и нажмите Сохранить Отказ

Установка двух пользователей как необходимые будет означать запрос на тягу не может быть завершен на этой ветке, пока все необходимые рецензеры не одобряют запрос. Два рецензента теперь перечислены под добавлением автоматических рецензентов:

Заключительная часть этого шага заключается в том, чтобы пользователи не могли обойти вновь созданную политику. В меню проекта нажмите « » Настройки проекта господствовать Теперь нажмите Репозитории под Репо В меню настроек проекта. Это отображает настройки безопасности для репозиториев, принадлежащих этому проекту. Нажмите Вкладчик И вы увидите, что лучший вариант Обходная политика при выполнении запросов по тяги это Не установлен Отказ Использование раскрывающегося списка, вы хотите выбрать, запрещено, чтобы ваша политика должна была следовать.

Измененное автоматическое сохранение и зеленое галочка отображается справа от коробки

Теперь вы готовы перейти к следующему шагу и работать с функциональными ветвями и запросами потянуты.

Шаг 3 — Нажатие локальной ветви функции для Azure Repos

Теперь у вас есть настройки филиала политики, вы готовы создать функциональную ветку на вашем локальном компьютере, подтолкните его к REPOS Azure и создать запрос на тягу.

Переключитесь обратно в Git и CD в каталог dotnetcore у вас есть на локальной машине. Беги Статус Git Чтобы проверить ваше местное репо, обновляется. Команда Гит филиал используется при работе с ветвями. Если вы запустите его автономным, GIT будет перечислять все филиалы в местном репо:

У вас есть только одна ветвь в настоящее время, это главная ветвь, как показано. Вы также можете использовать Гит филиал добавить новую ветку. Чтобы сделать это повторное выпустить Гит филиал Команда с именем ветви, которую вы хотели бы создавать метку до конца IT Git Friendly Пользователи/Nicole/Home-Blog-Функция Отказ Выполнить Гит филиал Еще раз перечислить филиалы в местном репо:

Обратите внимание, что мастер зеленый с звездой на ее левом углу, и ваша новая ветвь белая. Это обозначает, что вы работаете над главной веткой. Поэтому любые изменения, которые вы делаете во время редактирования, будут против этой отрасли. Вам нужно выполнить Git Checkout Команда для переключения на новую ветку, чтобы вы могли работать в изоляции в вашей новой функции. Сделать этот бег Git Checkout Пользователи/Nicole/Home-Blog-Функция Чтобы перейти на ваш вновь созданный ветвь. Вы можете повторно выдать Гит филиал Чтобы проверить, вы переключались ветви:

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

Вам может быть интересно, почему имена филиала Пользователи/Nicole/имя-блог-функция а не только Имя-Блог-Функция ? Это общий Конвенция об отмене филиала . По мере того, как вы становитесь более знакомы с GIT, вы можете использовать такие конвенции, как их фильтровать большой репо, показывающий все функции филиалов или филиалов Begfix, принадлежащие определенным пользователям.

Беги кода Чтобы открыть VS-код и отредактировать README.MD, вставьте в блок Markdown, показанном ниже. Это означает симулировать изменения кода в результате выделения в вашем приложении:

Обратите внимание на панель в левом нижнем углу VS-кода, из-за интеграции с GIT, VS-код отображает, какую ветвь вы в настоящее время работаете над:

Сохраните файл и переключитесь обратно в командную строку. Из папки DotNetCoRedemo Run Статус Git Чтобы просмотреть изменения файла. Добавьте изменения с Git Add. и совершить Git Commit -M "Добавлена функция нового блога" Отказ Теперь вы готовы подталкивать изменения в Azure DEVOPS. Для этого вам нужно сказать Git, чтобы подтолкнуть свою новую ветку на пульт дистанционного управления для Azure DEVOPS, что является происхождением — Git Push Origin Пользователи/Nicole/Home-Blog-Функция

Если вы вспоминаете от Часть 1 этого руководства вы можете проверить то, что вы назвали ваши пульты, и где они указывают на использование Git Remote -v .

Переключитесь на Azure DEVOPS и нажмите Филиалы под Репо в меню проекта. Теперь вы можете увидеть два филиала, мастера и вашу новую функциональную ветку. Вы можете увидеть ваше имя под автором, как вы совершили изменения и подтолкнули ветку до репо.

Обратите внимание на пользователи папки/Nicole. Это показывает небольшую часть силы хорошей конвенции именования ветви. Используя эту конвенцию, вы можете увидеть все филиалы, принадлежащие каждому из пользователей REPO, расширяя их папку. Наведите курсор на имя филиала функции, теперь вы можете нажать на Home-Blog-функция филиала :

Это требует вас непосредственно в раздел файлов Azure REPOS и в выбранную ветвь для отображения файлов, которые являются частью этой ветви.

Вы рады, что ваши изменения соответствуют требованиям функций, и теперь нужно объединить ваши изменения обратно в главную ветку. Для этого вам нужно создать запрос на тягу, нажав на Создать запрос на тягу на правой стороне.

В верхних двух раскрывающихся коробках новой страницы запроса на тягу показывают, что вы запрашиваете переменные изменения в филиал «Пользователи/Nicole/Home-Blog» в основной филиал. Ваше сообщение Commit было автоматически добавлено в Название запроса на тягу. Это одна из многих причин, почему вы должны думать о написании хороших коммитских сообщений.

Движется до Рецензента Здесь вы можете добавить конкретные члены проекта DotnetCoRedemo для просмотра ваших изменений. Тем не менее, вы уже настроили два пользователя на автоматическое просмотр запросов на главную ветку. Итак, чтобы проверить, это работает, оставьте этот пустой. Рабочие предметы Может автоматически ссылаться на элементы в Azure roads, если правильный номер (ы) элемента находятся в сообщении Commit (ы), или вы можете добавить их вручную здесь. Если вы прокрутите вниз, создайте ниже, вы можете увидеть изменения файла, которые являются частью этой ветки. Нажмите Создать Отказ Запрос на тягу создан, и вы переключаетесь на Потягивание запросов Пункт меню под Репо В меню проекта. Показан запрос на тягу, который вы только что создали:

Это страница запроса на тягу, она содержит всю информацию, необходимую для просмотра запроса на тягу. По умолчанию вы попадаете в вкладку «Обзор запроса на потяну». В верхней части вы можете увидеть запрос на тягу на Active. Сканирование дальше вниз ниже описания, отображается история запроса на тягу. Нет обзора этого запроса на тягу, так что история показывает, что запрос на тягу был создан, и ваш новый пользователь вместе с вашим именем пользователя был добавлен в соответствии с требованиями рецензентов.

Переключение, чтобы посмотреть на правую сторону, наверху Политики которые были установлены на этой ветви или пути (ы) в этой ветке. Красные кресты рядом с каждой политикой показывают, что вы не соответствуете требованиям введенных в список политик. Если Azure Roards работают предметы, были связаны с этим запросом потягивания, они будут перечислены в правой части под Рабочие предметы Отказ Рабочие элементы перечислены в качестве ссылок, позволяющие Swift Access для соответствующих рабочих элементов для обзора. Под Рецензенты требуемые рецензенты. Если вы выбрали дополнительные рецензенты, когда был создан запрос на тягу, они также будут перечислены здесь, сгруппированные под необязательным. Письмо для всех рецензентов можно отправить, нажав значок конверта справа от Рецензенты Отказ По умолчанию пользователи не уведомляются о том, что они обязаны просмотреть запрос на тягу, однако это может быть установлено в Уведомления для проекта Отказ

Хит Файлы Вкладка наверху:

Здесь перечислены файлы, которые отличаются между вашим ветем и мастером.

Вы рады, что запрос на тягу удовлетворяет требованиям функции и следует соглашению по кодированию, поэтому нажмите Утвердить рядом с верхним правом, чтобы одобрить его.

Зеленый клещ и аватар вашего пользователя размещаются рядом с кнопкой «Утверждение», чтобы показать, что вы одобрили его. Нажмите на Обзор Слева от вкладки файлов:

Экран обзора был обновлен с одобрением. В левой колонке в истории запроса на тягу одобрение показано как последняя пункт истории. Справа, Политики были обновлены, чтобы указать, что один из двух обязательных рецензентов одобрил этот запрос на тягу. Смотреть дальше вниз справа под Рецензенты Кроме того, есть галочка рядом с именем вашего пользователя, вы проверили и одобрили запрос на тягу.

Вы все еще не можете выполнить этот запрос на тягу. Пользователь, который вы добавили в рамках этого руководства, должны сначала просмотреть и утвердить запрос на тягу. Откройте другой браузер и войдите в систему как новый пользователь. Примечание Вам нужно будет включить организацию на URL. В этом примере моя организация — devopsdemo0755 так что мой URL будет https://dev.azure.com/devopsdemo0755. .

Введите проект dotnetCoredemo, затем перейдите к странице списка запросов на потяну, используя Репо В меню левой стороны, а затем Потягивание запросов Отказ

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

  • Одобрить — согласен с изменениями, как они.

  • Утвердить с предложениями — утверждает запросы на потяну, но открывает текстовое поле, чтобы оставить предложения для автора для улучшения кода.

  • Ждать автора — вы можете добавить комментарии к экрану обзора Этот вариант сигнализирует о том, что вы хотите, чтобы автору просмотреть ваши комментарии, прежде чем продолжить.

  • Отклонить — изменения недопустимы, вы должны оставить комментарий, чтобы объяснить, почему.

Хит Утвердить В списке экран утверждения запроса на тягу обновляется еще раз:

На левой исторической тропе, одобрение вашего нового пользователя была добавлена. Перемещение вправо внизу, у вас есть галочки рядом с требуемыми Рецензенты Отказ Переход к списку справа, у вас есть два клещи рядом с вашим Политики Отказ Два рецензента одобрили, и необходимые рецензенты одобрили. Все ваши Политики теперь встречались и Полный Кнопка стала включена в правом верхнем углу. Нажмите на Полный Кнопка, чтобы объединить изменения в Master:

Полное всплывающее окно запроса на тягу отображается. Название запроса на тягу допускается, чтобы стать полным комментарием. Если есть какие-либо связанные рабочие элементы для этого запроса на тягу, они могут быть автоматически установлены, чтобы завершено с помощью Ticking Полное связанные товары после объединения Отказ Пользователь, который вы сейчас вошли в систему, так как не имеют разрешений для удаления филиала функции, поэтому эта опция устарела. Нажмите Полное слияние .

Запрос на тягу помечен как полный, с именем пользователя, который его завершил, и полный комментарий также отображается.

Вернитесь к другому браузеру, которое зарегистрировано в Azure DEVOPS в качестве оригинального пользователя. Нажмите Репо В меню проекта, то Филиалы и выберите главную ветку. Это открывает файлы, которые находятся на главной ветке. Вы можете увидеть, что readme.md имеет коммит против него, который пришел из филиала функции, в которой вы объединились. Прокрутка вниз вы можете увидеть текст в самом readme.md, подтверждая, что слияние было успешным.

Если вы теперь нажимаете на История Вкладка к верхней части экрана вы можете увидеть подробный вид коммитов на главную ветку и где были объединены запросы по тяги в. Это показывает ключевую часть того, как GIT работает на слиянии. Не только ваши изменения в курсе, но и история ваших изменений.

Примечание, можно конденсировать историю ветки при объединении, эта концепция находится за пределами руководства начинающих.

Вы подтвердили, что ваши изменения кода и история совершения теперь безопасно объединены в главную ветку. Теперь вы можете идти вперед и удалить филиал функции, следующий шаг доставит вас через удаление функциональной ветки.

Шаг 4 — Удаление филиала функции

При использовании GIT это считается хорошей практикой, чтобы удалить свои ветви, как только вы закончите использовать их. Помимо хороших уборковых упражнений, эта практика означает, что все ветви в вашем репо — это текущие и активно работают.

Во-первых, убедитесь, что вы находитесь в окне браузера Azure DEVOPS, который вошел в систему как ваш оригинальный пользователь. Если вы вошли в систему в качестве нового пользователя, вы не сможете удалить ветку в Azure DEVOPS, так как пользователь не имеет разрешений для этого. Перейдите к списку филиалов, используя Репо в главном меню проекта, а затем Филиалы Отказ Переместите мышь справа от ветви, которая была объединена на предыдущем шаге. На скрытое меню Выберите Удалить филиал

Показано, что всплывающее окно проверяется, вы уверены, что хотите удалить ветку. Нажмите Удалить Ваша ветка удаляется.

Если вы вспомните полный экран запроса на потяжку с предыдущего шага, в MaStive был возможность Удалить пользователей/Nicole/Home-Blog-Функция после объединения Отказ

Если у пользователя имело разрешения, и флажок был проверен, ветвь была бы автоматически удалена после объединения. Поэтому вытесните ручное удаление, которое вы только что выполняли.

Филиал теперь удаляется в Azure DEVOPS, но у вас все еще есть его в местном репо. Вы можете увидеть это, переключив обратно в командную строку и выполняющую Гит филиал Наличие CD к вашему Git Reppo:

Пользователи филиала/Nicole/Home-Blog-функция все еще присутствуют. Вам нужно отойти от ветви, которую вы хотите удалить, поэтому переключитесь на Master, используя Git Checkout Master Отказ Проверьте, вы находитесь на главной ветви, используя Гит филиал Отказ Теперь выпустите команду «Удалить филиал», это выполняется с использованием -d на Гит филиал С именем ветви, помеченного до конца Git Flather -D пользователи/Nicole/Home-Blog-функция :

Это не удалила ветку локально, сообщение об ошибке говорит, что изменения в функции пользователей/Nicole/Home-Blog не были объединены в главную ветку. Это прекратить пользователи от удаления ветвей, которые не были объединены. До сих пор слияние произошло только на пульте в Azure DEVOPS после завершения запроса на тягу. Поэтому вам нужно потянуть объединенные изменения с пульта дистанционного управления в местный ветвь Master с Git Pull :

Теперь вы потянули изменения из объединенного для мастера на дистанционном режиме к местному мастеру. Обратите внимание на раздел, который является Обновление D65422C..4202971 Если вы вспомните страницу истории филиала, на которой вы посмотрели на последний шаг:

Красные коробки кружится Идентификаторы Это уникальные идентификаторы для коммитов для репо. Если вы посмотрите на первый идентификатор фиксации в Azure DEVOPS и сравните с первым в выходе командной строки, вы увидите, что они идентичны. Точно так же с последним в обоих скриншотах. Это дает вам небольшой взгляд на то, что происходит под капотом. Если вы вспоминаете от Часть 1 этой серии, а Git Pull Выполняет Git Fetch а затем Git Merge . В этом случае Git Pull Выбирает все изменения с точки зрения, где локальное репо и удаленное репо расходилось. Это из фиксации D65422C. . Если бы были изменения в главной отрасли локально, Git Pull попробую объединить изменения. Для этого прохождения нет никаких изменений в слиянии, поэтому филиал сейчас в фиксации 4202971 , одинаковый для удаленного репо.

Если вы решили не подтолкнуть ветвь изменений в пульте, вы можете заставить удаление ветви без слияния, используя -D Как описано в выходе командной строки.

Попробуйте команду «Удалить филиал». Git Flather -D пользователи/Nicole/Home-Blog-функция :

Филиал удаляет успешно, вы можете проверить это, выдавая Гит филиал И только мастер-филиал существует на месте.

Вывод

В этом посте Blog вы изучили функциональные филиалы и потянутые запросы с Git и Azure DEVOPS. Вы создали локальную функциональную ветку, эта ветвь позволила вам в изоляцию для других разработчиков в вашем проекте. Вы совершили свои изменения локально в свою новую ветку, затем нажали эту ветку на ваш пульт.

Далее вы посмотрели, как интегрировать Azure Ad Ad Azure DEVOPS, защищать функции Azure DEVOPS для пользователей в вашей Adure AD, поэтому оптимизируют управление пользователями. Вы добавили нового пользователя в Azure AD и присвоил этот пользователь роль участника вашего проекта в Azure DEVOPS. Это позволило вам настроить минимум два рецензента для запроса на тягу в отраслевой политике.

Вы создали запрос на тягу, используя два необходимых рецензента. Вы отметили, как каждое действие в запросе на тягу опирается история для запроса на тягу, которое можно просмотреть. Вы видели, как политика филиала остановила запрос на тягу от завершения, пока все требования к политике не будут выполнены. Наконец, вы удалили вас филиал, когда ваши изменения и истории были безопасно в магистерской ветке.

Этот процесс смоделировал небольшую команду, работающую над изменениями, и рассмотрение друг друга изменения, обеспечивающие качество кода. В следующей части этой серии вы будете работать с образцом .NET Основное приложение и протолкните его через построенный трубопровод.

Начало работы с Git и Azure DEVOPS (3 часть серии)

Оригинал: «https://dev.to/cloudskills/working-with-the-feature-branch-workflow-and-pull-requests-27pi»