[Agile, Управление продуктом, Управление проектами, Управление разработкой] YouTrack теперь с просмотром пул-реквестов в задачах
Автор
Сообщение
news_bot ®
Стаж: 6 лет 9 месяцев
Сообщений: 27286
Привет, Хабр!
С вами команда YouTrack из JetBrains. У нас отличные новости — начиная с YouTrack 2020.3 в задачах отображаются не только коммиты, связанные с задачами, но и пул-реквесты. В сегодняшнем посте мы расскажем, что это, зачем это, и как это поможет сделать процесс разработки более эффективным и понятным, а еще покажем остальные нововведения последней версии YouTrack.
За подробностями добро пожаловать в пост.
Что такое пул-реквест?
В ряде моделей модели разработки совместная работа над проектом выглядит так: вы копируете проект из системы контроля версий, вносите изменения локально, после чего отправляете запрос владельцу проекта на одобрение ваших изменений и включение их в общую кодовую базу проекта. Такой запрос называется пул-реквестом (или мерж-реквестом, в зависимости от системы контроля версий).
Грубо говоря, пул-реквест — это способ рассказать владельцу репозитория или своей команде, что вы сделали в проекте, и предложить включить ваши изменения в одну из общих веток разработки. Владелец репозитория (или человек, который будет делать вам код-ревью) может как принять изменения (смержить пул-реквест), так и отклонить — например если изменения противоречат видению автора проекта или в процессе код-ревью решили, что код нужно доработать.
В проектах с открытым исходным кодом нередко существуют требования к пул-реквестам, без соответствия которым пул-реквест не будет принят: например, наши коллеги из команды Kotlin просят разработчиков убедиться, что в описании пул-реквеста указана ссылка на соответствующую задачу в YouTrack, что изменения в пул-реквесте относятся только к указанным задачам, и что новый код запускается, корректно выполняется и покрыт тестами.
Зачем пул-реквесты в трекере?
Создание и принятие/отклонение пул-реквестов — это такие же важные шаги в жизненном цикле задачи, как и смена статуса или привязка соответствующего коммита. Все эти шаги показывают ход работы над задачей всем заинтересованным наблюдателям – например, комьюнити проекта с открытым исходным кодом или проектному менеджеру команды. Например, если задача не была закрыта из-за отклонения определенного пул-реквеста, эта информация должна быть обязательно отражена в истории задачи — в том числе и в ретроспективных целях, когда вам понадобится понять, почему задача столько времени провисела в открытом состоянии. Такой механизм делает процесс разработки более прозрачным и позволяет вам отслеживать жизненный цикл задачи шаг за шагом, не пропуская важных событий.
Просмотр пул-реквестов в задачах
Вернемся к YouTrack: начиная с YouTrack 2020.3, разработчики смогут видеть пул-реквесты из GitHub, GitLab, BitBucket, Gogs и Gitea в задачах рядом с коммитами. Чтобы пул-реквест вместе с его описанием, числом обновленных файлов и информацией об авторе отобразился в задаче, нужно упомянуть соответствующую задачу в названии пул-реквеста (все точно так же, как и с коммитами).
Далее, после принятия или отклонения пул-реквеста, YouTrack включит это событие в поток активности задачи вместе с автором события и статусом пул-реквеста. Получается, лента изменений задачи будет отображать весь жизненный цикл пул-реквеста — его создание и финальное решение (отклонение либо включение в кодовую базу).
Автоматизируй это
Мы очень любим и активно используем автоматизацию, поэтому не могли пройти мимо возможности использовать события из системы контроля версий в скриптах автоматизации. Теперь вы можете инициировать запуск рабочего процесса (workflow) YouTrack при добавлении пул-реквеста или коммита. Кроме того, в рабочих процессах появился доступ к свойствам коммитов и пул-реквестов, таким как имя автора, описание или примечание.
Что это значит? Например, вы можете автоматически менять статус задачи в зависимости от статуса пул-реквеста или отправлять запрос на код-ревью коллеге при создании пул-реквеста.
Вот такой несложный скрипт автоматически переведет задачу в статус Fixed при мерже пул-реквеста и затем назначит ее на QA-лида с сообщением о том, что задача готова к тестированию:
var entities = require('@jetbrains/youtrack-scripting-api/entities');
var QA_LEAD = 'qa_superman';
exports.rule = entities.Issue.onChange({
title: 'Set_to_fixed_when_pull_request_is_merged_and_notify',
guard: function(ctx) {
return ctx.issue.pullRequests.isNotEmpty() &&
ctx.issue.pullRequests.last().previousState &&
ctx.issue.pullRequests.last().state.name !== ctx.issue.pullRequests.last().previousState.name &&
ctx.issue.pullRequests.last().state.name === "MERGED";
},
action: function(ctx) {
var issue = ctx.issue;
issue.State = ctx.State.Fixed;
issue.Assignee = entities.User.findByLogin(QA_LEAD);
issue.addComment("The issue is ready to be tested");
},
requirements: {
State: {
type: entities.State.fieldType,
Fixed: {
name: "Fixed"
}
},
}
});
Как и раньше, скрипты могут запускаться по расписанию или при определенном событии в зависимости от вашего процесса. Подробности о рабочих процессах и о том, как их писать, можно найти здесь.
Что еще интересного?
Конечно, мы не ограничились только просмотром пул-реквестов. Среди остальных нововведений — новый виджет учета времени для панелей мониторинга (дашборды), чтобы было удобнее следить за продуктивностью и не увлекаться переработками на карантине.
Для удобной работы со списком задач мы добавили возможность отображать только незавершенные задачи в один клик и сортировать задачи по количеству комментариев. Базе знаний досталась подсветка синтаксиса для блоков кода с автоматическим определением языка программирования, а для любителей Markdown мы сделали возможность менять размер вложенных изображений, видео и других медиа-файлов в задачах и статьях.
Есть новости и для тех, кто использует LDAP-сервер для управления учетными данными пользователей. YouTrack и раньше позволял аутентифицироваться с помощью учетных данных из LDAP-сервера, а теперь к этому добавилась синхронизация групп и атрибутов пользователей с LDAP-сервером по расписанию. Это позволит поддерживать учетные данные и информацию о принадлежности к LDAP-группам в максимально актуальном состоянии — например, поможет избежать несанкционированного доступа к данным в трекере, если пользователь уже не является членом группы на вашем LDAP-сервере, но все еще получает соответствующий доступ в трекере из-за задержки в синхронизации между LDAP-сервером и YouTrack.
Подробности обо всех изменениях можно найти на нашем сайте.
А если вы еще не знакомы с YouTrack или только начинаете работу с ним — добро пожаловать на нашу бесплатную демонстрацию основ YouTrack.
===========
Источник:
habr.com
===========
Похожие новости:
- [IT-компании, Лайфхаки для гиков, Разработка веб-сайтов, Разработка мобильных приложений, Управление продуктом] Наука о пользовательском опыте. Использование когнитивных искажений в разработке качественных продуктов
- [Microsoft SQL Server, MySQL, PostgreSQL, Администрирование баз данных] DataGrip 2020.2: редактор больших значений, предпросмотр SQL при редактировании, новое отображение ячеек bool и другое
- [DevOps, Системное администрирование, Системное программирование, Управление разработкой] Мир без DevOps. Каким бы он был?
- [Agile, DevOps, Управление проектами, Читальный зал] DevOps или как мы теряем заработную плату и будущее IT-отрасли, часть вторая
- [JavaScript, Разработка веб-сайтов] WebStorm 2020.2: возможность использовать Prettier по умолчанию, поддержка Nuxt.js и другие улучшения
- [Профессиональная литература, Управление продуктом, Читальный зал] Digital Practitioner Body of Knowledge — обзор инструкции по цифровой трансформации для практиков
- [Интервью, Проектирование и рефакторинг, Системное программирование, Управление проектами] И снова о Legacy. Вечная боль техдира
- [JavaScript, Тестирование веб-сервисов] Регрессионная спираль смерти (перевод)
- [IT-компании, Развитие стартапа, Управление продуктом, Управление разработкой] Иван Дёмшин, Head of Engineering в Miro, о продуктовой разработке, смене технологий и эволюции процессов в компании
- [Управление проектами, Учебный процесс в IT, Карьера в IT-индустрии] Как сдать PMP, не выходя из дома. Личный опыт
Теги для поиска: #_agile, #_upravlenie_produktom (Управление продуктом), #_upravlenie_proektami (Управление проектами), #_upravlenie_razrabotkoj (Управление разработкой), #_issue_tracker, #_issue_tracking, #_pull_request, #_vcs, #_agile, #_task_menedzhment (таск менеджмент), #_upravlenie_proektami (управление проектами), #_upravlenie_produktom (управление продуктом), #_youtrack, #_blog_kompanii_jetbrains (
Блог компании JetBrains
), #_agile, #_upravlenie_produktom (
Управление продуктом
), #_upravlenie_proektami (
Управление проектами
), #_upravlenie_razrabotkoj (
Управление разработкой
)
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 21:52
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 6 лет 9 месяцев |
|
Привет, Хабр! С вами команда YouTrack из JetBrains. У нас отличные новости — начиная с YouTrack 2020.3 в задачах отображаются не только коммиты, связанные с задачами, но и пул-реквесты. В сегодняшнем посте мы расскажем, что это, зачем это, и как это поможет сделать процесс разработки более эффективным и понятным, а еще покажем остальные нововведения последней версии YouTrack. За подробностями добро пожаловать в пост. Что такое пул-реквест? В ряде моделей модели разработки совместная работа над проектом выглядит так: вы копируете проект из системы контроля версий, вносите изменения локально, после чего отправляете запрос владельцу проекта на одобрение ваших изменений и включение их в общую кодовую базу проекта. Такой запрос называется пул-реквестом (или мерж-реквестом, в зависимости от системы контроля версий). Грубо говоря, пул-реквест — это способ рассказать владельцу репозитория или своей команде, что вы сделали в проекте, и предложить включить ваши изменения в одну из общих веток разработки. Владелец репозитория (или человек, который будет делать вам код-ревью) может как принять изменения (смержить пул-реквест), так и отклонить — например если изменения противоречат видению автора проекта или в процессе код-ревью решили, что код нужно доработать. В проектах с открытым исходным кодом нередко существуют требования к пул-реквестам, без соответствия которым пул-реквест не будет принят: например, наши коллеги из команды Kotlin просят разработчиков убедиться, что в описании пул-реквеста указана ссылка на соответствующую задачу в YouTrack, что изменения в пул-реквесте относятся только к указанным задачам, и что новый код запускается, корректно выполняется и покрыт тестами. Зачем пул-реквесты в трекере? Создание и принятие/отклонение пул-реквестов — это такие же важные шаги в жизненном цикле задачи, как и смена статуса или привязка соответствующего коммита. Все эти шаги показывают ход работы над задачей всем заинтересованным наблюдателям – например, комьюнити проекта с открытым исходным кодом или проектному менеджеру команды. Например, если задача не была закрыта из-за отклонения определенного пул-реквеста, эта информация должна быть обязательно отражена в истории задачи — в том числе и в ретроспективных целях, когда вам понадобится понять, почему задача столько времени провисела в открытом состоянии. Такой механизм делает процесс разработки более прозрачным и позволяет вам отслеживать жизненный цикл задачи шаг за шагом, не пропуская важных событий. Просмотр пул-реквестов в задачах Вернемся к YouTrack: начиная с YouTrack 2020.3, разработчики смогут видеть пул-реквесты из GitHub, GitLab, BitBucket, Gogs и Gitea в задачах рядом с коммитами. Чтобы пул-реквест вместе с его описанием, числом обновленных файлов и информацией об авторе отобразился в задаче, нужно упомянуть соответствующую задачу в названии пул-реквеста (все точно так же, как и с коммитами). Далее, после принятия или отклонения пул-реквеста, YouTrack включит это событие в поток активности задачи вместе с автором события и статусом пул-реквеста. Получается, лента изменений задачи будет отображать весь жизненный цикл пул-реквеста — его создание и финальное решение (отклонение либо включение в кодовую базу). Автоматизируй это Мы очень любим и активно используем автоматизацию, поэтому не могли пройти мимо возможности использовать события из системы контроля версий в скриптах автоматизации. Теперь вы можете инициировать запуск рабочего процесса (workflow) YouTrack при добавлении пул-реквеста или коммита. Кроме того, в рабочих процессах появился доступ к свойствам коммитов и пул-реквестов, таким как имя автора, описание или примечание. Что это значит? Например, вы можете автоматически менять статус задачи в зависимости от статуса пул-реквеста или отправлять запрос на код-ревью коллеге при создании пул-реквеста. Вот такой несложный скрипт автоматически переведет задачу в статус Fixed при мерже пул-реквеста и затем назначит ее на QA-лида с сообщением о том, что задача готова к тестированию: var entities = require('@jetbrains/youtrack-scripting-api/entities');
var QA_LEAD = 'qa_superman'; exports.rule = entities.Issue.onChange({ title: 'Set_to_fixed_when_pull_request_is_merged_and_notify', guard: function(ctx) { return ctx.issue.pullRequests.isNotEmpty() && ctx.issue.pullRequests.last().previousState && ctx.issue.pullRequests.last().state.name !== ctx.issue.pullRequests.last().previousState.name && ctx.issue.pullRequests.last().state.name === "MERGED"; }, action: function(ctx) { var issue = ctx.issue; issue.State = ctx.State.Fixed; issue.Assignee = entities.User.findByLogin(QA_LEAD); issue.addComment("The issue is ready to be tested"); }, requirements: { State: { type: entities.State.fieldType, Fixed: { name: "Fixed" } }, } }); Как и раньше, скрипты могут запускаться по расписанию или при определенном событии в зависимости от вашего процесса. Подробности о рабочих процессах и о том, как их писать, можно найти здесь. Что еще интересного? Конечно, мы не ограничились только просмотром пул-реквестов. Среди остальных нововведений — новый виджет учета времени для панелей мониторинга (дашборды), чтобы было удобнее следить за продуктивностью и не увлекаться переработками на карантине. Для удобной работы со списком задач мы добавили возможность отображать только незавершенные задачи в один клик и сортировать задачи по количеству комментариев. Базе знаний досталась подсветка синтаксиса для блоков кода с автоматическим определением языка программирования, а для любителей Markdown мы сделали возможность менять размер вложенных изображений, видео и других медиа-файлов в задачах и статьях. Есть новости и для тех, кто использует LDAP-сервер для управления учетными данными пользователей. YouTrack и раньше позволял аутентифицироваться с помощью учетных данных из LDAP-сервера, а теперь к этому добавилась синхронизация групп и атрибутов пользователей с LDAP-сервером по расписанию. Это позволит поддерживать учетные данные и информацию о принадлежности к LDAP-группам в максимально актуальном состоянии — например, поможет избежать несанкционированного доступа к данным в трекере, если пользователь уже не является членом группы на вашем LDAP-сервере, но все еще получает соответствующий доступ в трекере из-за задержки в синхронизации между LDAP-сервером и YouTrack. Подробности обо всех изменениях можно найти на нашем сайте. А если вы еще не знакомы с YouTrack или только начинаете работу с ним — добро пожаловать на нашу бесплатную демонстрацию основ YouTrack. =========== Источник: habr.com =========== Похожие новости:
Блог компании JetBrains ), #_agile, #_upravlenie_produktom ( Управление продуктом ), #_upravlenie_proektami ( Управление проектами ), #_upravlenie_razrabotkoj ( Управление разработкой ) |
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 21:52
Часовой пояс: UTC + 5