Обложка канала

.NET Разработчик

Опытный разработчик не так давно зашёл в .Net и поставил цель получить сертификат Microsoft. Свой ежедневный прогресс он описывает на канале .Net Разработчик. Заметки об изученном материале, советы по повышению производительности и поддержке мотивации, ин

.NET Разработчик

4 года назад
Открыть в
День 1326. #CodeReview Советы по Улучшению Обзоров Кода на GitHub У большинства компаний и команд есть специальные стандарты, определяющие, как должен выглядеть обзор и сколько согласований вам нужно, прежде чем слить код в основную ветку. У GitHub есть специальные инструменты для поддержки обзоров кода в своих средах. 1. Защищённые ветки Защитите основную ветку от случайных изменений. Push чего-либо непосредственно в основную ветку не должен быть возможным. К счастью, GitHub предлагает отличный механизм для защиты веток. Вы можете создать специальные правила, определив, например, что для слияния кода с основной веткой требуется пул-реквест и одобрение хотя бы одного рецензента. Как это настроить? - В репозитории на GitHub перейдите на вкладку Settings (Настройки). - В меню слева нажмите Branches (Ветки). - В разделе Branch protection rules (Правила защиты веток) нажмите Add rule (Добавить правило). - Введите имя ветки или регулярное выражение для шаблона имени. - Выберите один из пунктов, из списка правил и сохраните изменения. 2. Метки Метки — это дополнительные, легко распознаваемые фрагменты информации, видимые в списках пул-реквестов. Вы можете использовать их, например, чтобы различать внутренние и внешние изменения, запросы на слияние, связанные с конкретными функциями вашего приложения, типом изменений или размером. Использование меток значительно упрощает управление слияниями. Как создать новую метку? - В репозитории на GitHub перейдите в раздел Pull Requests. - Щёлкните на кнопку Labels (Метки) рядом с полем фильтра. - Нажмите зелёную кнопку New label (Новая метка). - Заполните все поля в форме и нажмите кнопку Create label (Создать метку). - Теперь вы можете назначить её любому из ваших новых или существующих мерж-реквестов в форме создания пул-реквеста. 3. Автоматические проверки Многие вещи, такие как синтаксис или выполнение тестов, могут выполняться автоматически. Вы можете использовать Jenkins/Github Actions/CircleCI или любой другой инструмент по вашему выбору, чтобы запускать автоматические тесты при каждом создании пул-реквеста. Добавьте правило для отказа в слиянии до тех пор, пока не будут пройдены все необходимые проверки. В один прекрасный день это может спасти ваш производственный код! Добавьте также способ лёгкого повторного запуска этих тестов вручную . Например, отправка специального сообщения в комментарии на GitHub. Это очень полезно при отладке. 4. Шаблон сообщения пул-реквеста с контрольным списком Каждый запрос на слияние должен иметь хороший, короткий и говорящий сам за себя заголовок и некоторое описание, возможно ссылку на задачу в баг-трекере. Кроме того, некоторые вещи нельзя протестировать вручную, например, доступность или выполнение бизнес-требований. Со временем становится всё труднее помнить все те вещи, которые нужно указать в сообщении мерж-реквеста вам, как автору, и вещи, которые нужно проверить вам, как рецензенту. Вы можете легко решить эти проблемы, используя шаблоны для мерж-реквестов. Это черновик сообщения с контрольным списком вещей, которые нужно проверить вручную, когда вы создаёте запрос на слияние, и этого достаточно, чтобы заполнить форму необходимой информацией и отметить все пункты в контрольном списке как выполненные. Как добавить шаблон? - Откройте свой репозиторий в своем любимом редакторе кода. - Добавьте файл pull_request_template.md в корень вашего репозитория или папку docs, расположенную в корне. - Поместите свой шаблон внутрь файла (вы можете использовать синтаксис markdown для создания заголовков, контрольных списков и т. д.). - Слейте изменения с основной веткой. - Если вы хотите иметь более 1 шаблона сообщения, создайте каталог PULL_REQUEST_TEMPLATE (также в корне или в папке docs) и храните там файлы markdown. В этом случае пользователь сможет выбрать один из шаблонов, используя раскрывающееся меню во время создания запроса на слияние. Источник: https://dev.to/this-is-learning/5-tips-to-improve-your-code-reviews-on-github-gja