Модуль 9 · урок 5 з 9
Гігієна PR
Pull request — це не форма для галочки, а прохання витратити чужий час. Наскільки легко його виконати, залежить майже повністю від тебе. Гарний PR рев'юять за десять хвилин, поганий висить три дні.
Розмір — найважливіше
Практичний висновок: краще три PR по двісті рядків, ніж один на шістсот. І це не лише про чужу зручність — маленький PR швидше проходить, тож і твоя робота не блокується на три дні.
Опис
## Що змінено
Додано фільтр за статусом у список задач. Стан фільтра живе в сторі
й віддзеркалюється в query-параметрах, тож відфільтроване подання
можна надіслати посиланням.
## Чому саме так
Фільтр міг би жити в компоненті, але тоді його не побачив би експорт
і не було б посилання. Стор уже тримає інші параметри списку,
тож логічно покласти туди й цей.
## Як перевірити
1. Відкрити /tasks
2. Обрати статус «Заблоковано»
3. Переконатись, що адреса змінилась і сторінка скинулась на першу
4. Оновити сторінку — фільтр має зберегтись
## Скріншоти
[до] [після]
Closes #12
Рев'ювер не знає твоєї задачі так, як ти. Три рядки інструкції перетворюють «подивлюсь пізніше» на «перевірив за дві хвилини». Це найкорисніша частина опису й та, яку найчастіше пропускають.
Самостійне рев'ю перед відправкою
Обовʼязковий крок: відкрий власний PR і прочитай діф так, ніби він чужий. Половина зауважень знаходиться саме тут — до того, як їх побачить хтось інший.
- Забуті
console.logі закоментований код. - Файли, які потрапили випадково.
fitіfdescribeу тестах.- Тимчасові назви:
test2,tmp,asdf. - Місця, де сам не одразу згадав, як воно працює — там потрібен коментар.
- Назва «Fixes» або «Update».
- Порожній опис.
- Рефакторинг усього проєкту разом із однією фічею.
- Не проходить CI, але «зараз полагоджу».
- Сорок файлів, з яких тридцять — автоформатування.
Форматування окремим комітом
# ❌ фіча й переформатування разом — діф нечитабельний
feat(grid): add sorting # 40 файлів, 1200 рядків
# ✅ окремо
style: apply prettier to tasks module # 38 файлів, лише пробіли
feat(grid): add sorting # 3 файли, 180 рядків
Рев'ювер тоді може пропустити перший коміт одним поглядом і уважно прочитати другий. В обʼєднаному вигляді він не побачить нічого — реальні зміни потонуть серед пробілів.
Чеклист перед створенням PR
- Гілка від свіжого
main, конфліктів немає. ng lintіng testпроходять локально.- Прочитав власний діф повністю.
- Назва PR за форматом Conventional Commits.
- В описі є «що», «чому» і «як перевірити».
- Для змін в інтерфейсі — скріншот до і після.
- Задача звʼязана.
Створювати PR самому собі здається дивним, але саме тут це найдешевший спосіб виробити звичку. Плюс через пів року в тебе буде десяток PR з нормальними описами — і це буквально портфоліо процесу, якого немає у більшості кандидатів.