Пул-реквести

Як створити чудовий пул-реквест


За допомогою пул-реквестів (PR) ми надсилаємо свої пропозиції змін до тієї чи іншої частини кодової бази Exercism. Якщо ми зараз читаємо це й готуємо PR, то дякуємо! Цей посібник має допомогти з нетехнічним боком PR, щоб досвід був приємним і щоб водночас це допомагало нашій команді мейнтейнерів.

Чого очікувати

Процес роботи з PR такий:

  • Надсилаємо PR
  • Один або кілька мейнтейнерів переглядають PR і залишають коментарі з пропозиціями. Іноді вони обговорюють PR загалом, щоб зрозуміти, чи справді цю зміну варто додавати.
  • PR зливають, і ми отримуємо репутацію на сайті. Або PR закривають.

Як домогтися, щоб PR злили?

Дещо можна зробити заздалегідь, щоб підвищити шанси, що PR зіллють із мінімальними правками.

Найголовніше: ще до надсилання PR переконатися, що мейнтейнери схвально поставляться до цих змін. Найпростіший спосіб - спершу відкрити Issue на GitHub, пояснити, що ми плануємо зробити, і запитати, чи готові мейнтейнери до таких змін.

Note

Якщо на сайті Exercism уже є Task, то немає потреби відкривати новий Issue. Можна прокоментувати наявний Issue, написати, що ми беремося за нього, і працювати далі.

По-друге, коли ми відкриваємо PR, треба подбати про чіткий опис. PR без опису неймовірно дратують мейнтейнерів, бо в них немає контексту, коли вони читають код. Розкажімо, чому ми внесли ці зміни, додаймо посилання на Issue, якого стосується PR, пояснімо будь-які компроміси, на які довелося піти, тощо.

І нарешті, нехай PR містить лише зміни, потрібні для одного покращення. Якщо покращень кілька, розділімо їх на кілька PR. Так мейнтейнерам буде легше й швидше переглядати зміни, і нам самим теж буде простіше.

Скільки чекати?

Зазвичай мейнтейнери переглядають PR протягом кількох днів. Будь ласка, не нагадуйте про PR зайвими коментарями протягом першого тижня: наші мейнтейнери - волонтери й зайняті люди, тож вони візьмуться за перегляд, щойно матимуть час. Якщо відповіді немає протягом 7 днів, позначте @exercism/reviewers у новому коментарі до PR, і це приверне увагу ширшої команди.


Ще раз дякуємо за внесок в Exercism. Сподіваємося, це буде цікавий і корисний досвід!