풀 리퀘스트

좋은 풀 리퀘스트를 만드는 방법


풀 리퀘스트(PR)는 Exercism 코드베이스의 일부에 대해 제안하는 변경 사항을 제출하는 방법이에요. 이 글을 읽으면서 PR을 준비하고 있다면, 정말 감사해요! 이 가이드는 PR의 비기술적인 부분을 도와서, 좋은 경험을 하고 동시에 우리 메인테이너 팀에도 도움이 되도록 만들어졌어요.

어떻게 진행되나요?

PR은 다음과 같은 과정을 거쳐요:

  • PR을 제출해요
  • 한 명 이상의 메인테이너가 PR을 리뷰하면서 제안 댓글을 남겨요. 경우에 따라서는 그 변경이 정말 추가할 만한 것인지 PR 전체를 놓고 논의하기도 해요.
  • PR이 병합되고 웹사이트에서 Reputation을 받아요. 아니면 PR이 닫혀요.

PR이 병합되게 하려면 어떻게 해야 하나요?

최소한의 수정으로 PR이 병합될 가능성을 높이려면 미리 할 수 있는 일들이 있어요.

가장 중요한 것은 PR을 제출하기 전에 메인테이너들이 이 변경을 반길지 확인하는 거예요. 가장 쉬운 방법은 GitHub에 먼저 이슈를 열어서, 무엇을 하려는지 설명하고 메인테이너들이 그 변경을 받아들일 의향이 있는지 물어보는 거예요.

Note

Exercism 웹사이트에서 Task를 발견했다면, 새 이슈를 열 필요가 없어요. 기존 이슈에 이 작업을 하겠다고 댓글을 남기고 바로 진행하면 돼요.

두 번째로 챙길 것은 PR을 열 때 PR 안에 명확한 설명을 남기는 거예요. 설명이 없는 PR은 메인테이너들에게 정말 답답해요. 코드를 읽을 때 맥락을 알 수 없기 때문이에요. 왜 이 변경을 했는지, 어떤 이슈와 관련된 PR인지, 감수해야 했던 트레이드오프는 무엇인지 등을 적어 주세요.

마지막으로, PR에는 하나의 개선과 관련된 변경만 담아 주세요. 개선 사항이 여러 개라면 여러 개의 PR로 나눠 주세요. 그러면 메인테이너가 더 쉽고 빠르게 리뷰할 수 있고, 본인에게도 도움이 돼요.

얼마나 기다려야 하나요?

보통 메인테이너들은 며칠 안에 PR을 리뷰해요. 첫 주 동안에는 추가 댓글로 PR을 계속 올리지 말아 주세요. 메인테이너들은 자원봉사자이고 바쁜 사람들이라, 가능한 한 빨리 리뷰해 줄 거예요. 7일이 지나도 답변이 없다면, PR에 새 댓글을 달면서 @exercism/reviewers를 태그해 주세요. 그러면 더 많은 팀이 그 사실을 알게 돼요.


Exercism에 기여해 주셔서 다시 한번 감사해요. 즐겁고 값진 경험이 되기를 바라요!