Требования к созданию Issue и PR - moevm/mse1h2024-licheepi GitHub Wiki
Общие требования
Именование
Все новые Issue и PR должен быть назван следующим образом:
[КОД-ISSUE] Имя Issue ли PR в свободной форме на русском or in English
КОД-ISSUE представляет собой обозначенную последовательностью заглавных букв область, соответствующую наиболее затрагиваемому связанному с затрагиваемыми областями тэгу, затем дефис, затем порядковый номер Issue в затрагиваемой области.
В названиях Issue и PR не должно быть орфографических и грамматических ошибок.
Тэги
Тэги делятся на три группы:
- Связанные с затрагиваемыми областями
- Связанные с типом работы
- Связанные с версией продукта
Связанные с затрагиваемыми областями тэги
Для Issue, связанные с затрагиваемыми областями тэги должны указывать те компоненты, в которые должны вноситься изменения в процессе реализации поставленной в данном Issue задачи.
Для PR, на первом PR для конкретного Issue связанные с затрагиваемыми областями тэги обязаны совпадать со всеми такими тэгами на issue, если он реализует всю задачу, а в противном случае только те, которые он непосредственно затрагивает. Все последующие PR аналогичным образом идут по второй части правила.
Имеются следующие связанные с затрагиваемыми областями тэги:
- ci: mse1h2024-licheepi, mse1h2024-licheepi4a-sdk, mse1h2024-xuantie-yocto
- docker: mse1h2024-licheepi, mse1h2024-licheepi4a-sdk, mse1h2024-xuantie-yocto
- licheepi4a: mse1h2024-licheepi, mse1h2024-licheepi4a-sdk, mse1h2024-xuantie-yocto
- podman: mse1h2024-licheepi, mse1h2024-licheepi4a-sdk, mse1h2024-xuantie-yocto
- qemu: mse1h2024-licheepi, mse1h2024-licheepi4a-sdk, mse1h2024-xuantie-yocto
- yocto: mse1h2024-licheepi, mse1h2024-licheepi4a-sdk, mse1h2024-xuantie-yocto
Связанные с типом работы тэги
Имеются следующие связанные с типом работы тэги:
- improvement: mse1h2024-licheepi, mse1h2024-licheepi4a-sdk, mse1h2024-xuantie-yocto;
- documentation:mse1h2024-licheepi, mse1h2024-licheepi4a-sdk, mse1h2024-xuantie-yocto;
- implementation: mse1h2024-licheepi, mse1h2024-licheepi4a-sdk, mse1h2024-xuantie-yocto;
- invalid: mse1h2024-licheepi, mse1h2024-licheepi4a-sdk, mse1h2024-xuantie-yocto;
- research: mse1h2024-licheepi, mse1h2024-licheepi4a-sdk, mse1h2024-xuantie-yocto.
Они выставляются в соответствии с типом работы в проекте следующим образом:
- Тэги implementation, invalid, bug ставится для типа Feature в соответствии со смыслом PR:
- Тэг implementation ставится по умолчанию, то есть если Issue/PR направлен на реализацию фичи на оценивание;
- Тэг invalid ставится, если Issue/PR направлен на исправление несоответствия проекту поставленным требованиям;
- Тэг improvement ставится, если Issue/PR направлен на исправление любой другой ошибки либо внедрение любого не поставленного в требованиях улучшения.
- Тэг documentation ставится для типов Sprint и Documentation;
- Тэг research ставится для типа Intangible;
- Для типа Repository management тэги ставятся следующим образом:
- По умолчанию Тэг не ставится;
- Тэг invalid ставится при добавлении нового подрепозитория;
- Тэг documentation ставится для разработки правил работы с репозиториями.
Связанные с версией продукта тэги
Связанные с версией продукта тэги обязаны соответствовать текущей версии разрабатываемого продукта. В частности:
- На второй итерации разрабатывается версия v0.1: mse1h2024-licheepi, mse1h2024-licheepi4a-sdk, mse1h2024-xuantie-yocto;
- На третьей итерации разрабатывается версия v0.2: mse1h2024-licheepi, mse1h2024-licheepi4a-sdk, mse1h2024-xuantie-yocto;
- На четвёртой итерации разрабатывается версия v0.3: mse1h2024-licheepi, mse1h2024-licheepi4a-sdk, mse1h2024-xuantie-yocto.
Указание проекта
Все Issue должны быть добавлен к проекту moevm/mse1h2024-licheepi. PR должен быть добавлен к проекту moevm/mse1h2024-licheepi, если он не отклонён или закрыт навсегда, и не должен быть добавлен в обратном случае.
Открытый Issue должен быть перенесён в To Do, автоматически это не делается.
Для каждого Issue и PR должен быть указан тип:
- Тип Sprint указывается, если Issue/PR связан с оформлением результатов спринта;
- Тип Feature указывается, если Issue/PR связан непосредственно с разработкой проекта, то есть участвует в реализации хотя бы одной фичи на оценивание;
- Тип Repository management указывается, если Issue/PR связан с управлением репозиториями;
- Тип Documentation указывается для всех остальных Issue, если они подразумевают добавление хоть чего-то в репозиторий, а также для всех остальных PR;
- Тип Intangible указывается для всех остальных Issue, в рамках которых в репозиторий не добавляется ничего. Он не может быть на PR. Если PR относится к Issue, то его тип должен соответствовать типу Issue.
Указание итерации
В Milestones требуется указать текущую итерацию. Их четыре:
- Итерация 1;
- Итерация 2;
- Итерация 3;
- Итерация 4.
Требования к созданию Issue
Права на создание, изменение и закрытие
Создавать и закрывать Issue имеет право только @oorschnai (Мария Сорочина)
Изменять Issue имеют право только @oorschnai (Мария Сорочина) и @dmitrij-zavrazhin-1304 (Dmitrij Zavražin).
Описание
В описании требуется привести описание поставленной задачи. Затем в качестве Definition of Done указать критерии, согласно которым определяется её успешное выполнение.
Исполнитель
В поле Assignee требуется указать исполнителей, у которых будет право делать коммиты и создавать PR, относящиеся к данному Issue.
Требования к созданию PR
Права на создание, закрытие, и слияние
Создавать PR имеет право имеет каждый. В том случае, если PR относится к Issue, создавать PR имеет только один из указанных там исполнителей.
Закрывать PR имеет право только создатель PR, а также @oorschnai (Мария Сорочина) и @dmitrij-zavrazhin-1304 (Dmitrij Zavražin).
Мёржить PR имеет право только @oorschnai (Мария Сорочина).
Описание
Для PR описание не требуется.
Проверяющие
Для тех, кто не указан в CODEOWNERS, поле Reviewers обязательно должно соответствовать указанным в нём людям.
Для тех, кто указан в CODEOWNERS и соответственно не имеет права проверять свой собственный код, требуется указать двух дополнительных проверяющих, хотя бы один из которых будет обязан провести проверку, следующим образом:
- Для репозитория mse1h2024-licheepi: @CorvusSharp (Ярослав Герасименко) и @pddemchuk (Полина Демчук);
- Для репозитория mse1h2024-licheepi4a-sdk: @CorvusSharp (Ярослав Герасименко) и @pddemchuk (Полина Демчук);
- Для репозитория mse1h2024-xuantie-yocto: @GeorIsay (Георгий Исайкин) и @sashachernyakova (Александра Чернякова);
- Для репозитория mse1h2024-meta-virtualization: @GeorIsay (Георгий Исайкин) и @sashachernyakova (Александра Чернякова);
Исполнитель
В поле Assignee требуется указать себя. Каждый имеет право создавать PR только на себя, нельзя создавать за другого.
Комментарий о создании PR
После создания PR в соответствующем issue должен быть написан комментарий со ссылкой на открытый PR.