Pull Requestها

چگونه یک Pull Request عالی بسازیم


Pull Request‌ها (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 را بالا نیاورید. نگهدارندگان ما داوطلب و آدم‌های پرمشغله‌ای هستند و در اولین فرصت آن را بررسی می‌کنند. اگر تا ۷ روز پاسخی نگرفتید، لطفاً در یک کامنت جدید روی PR، @exercism/reviewers را تگ کنید تا تیم گسترده‌تری از آن باخبر شود.


دوباره از اینکه به Exercism کمک می‌کنید سپاسگزاریم. امیدواریم تجربه‌ی لذت‌بخش و ارزشمندی برایتان باشد!