오픈소스에 기여하는 방법

 

Ready

나도 오픈소스에 기여한 경험은 적지만 처음 시도할 때 굉장히 헷갈리는 과정이여서 기록해두기 위해 글을 적는다.

컴퓨터에 깃과 깃허브에 익숙하지 않아도 처음부터 끝까지 따라하면 기여를 하게되도록 글을 구성하였다.

Go

Project

오픈소스에 기여하는 첫 번째 과정은 프로젝트를 고르는 것이다.

Github Explore, CodeTriage 등의 사이트에서 기여할 수 있는 프로젝트를 찾을 수 있다.

코드를 수정하거나, 기능을 추가하는 것 외에도 오탈자를 수정하거나 더 좋은 아이디어를 제시하고, 문서를 번역하는 일도 모두 기여활동이다.

기여하고 싶은 프로젝트를 찾았다면, Issues탭에서 아직 해결하지 못한 오류나 토론하고 있는 아이디어 등을 살펴보고
내가 할 수 있는 일이나 이미 하고 있는 작업이라면 다른 사람이 중복된 일을 하지 않도록 코멘트를 달아서 알려야 한다.
또한, 기여을 위한 가이드라인이 있는지 찾아보고 룰을 따르도록 한다.

이 글은 awesome-women-developer에 컨트리뷰션하는 과정이다.

Fork

페이지의 오른쪽 상단 fork 버튼을 클릭해 기여하고자하는 저장소를 포크한다. (포크 후 로컬에 clone해서 작업해도 된다.)

1

Edit

복잡한 작업이라면 새로운 Branch를 생성해야하지만, 지금은 간단한 작업이므로 master Branch에서 작업한다.

수정하고자 하는 파일 열거나 새로운 파일을 생성해서 작업을 한다.
주의할 점은 해당 저장소의 컨트리뷰션 가이드라인에 따라야 한다는 것이다.

awesome-women-developer를 Fork했다면 저장소의 README.md 파일을 열어 연필 모양의 Edit this file을 클릭한다.

여성개발자라면 자신의 이름을 목록에 넣어본다. 나는 예시로 Test라는 이름을 리스트에 추가했다.

2

모든 작업을 마쳤다면 어떤 것을 변경했는지 또는 추가했는지를 적은 메시지를 달아 커밋한다.

git 커밋 규칙은 좋은 git 커밋 메시지를 작성하기 위한 7가지 약속 참고

3

Pull request(PR)

현재까지의 작업은 원저장소가 아닌 포크한 저장소에서 이루어졌다.
이제 원저장소에 풀리퀘스트를 보내 내가 작업한 내용 반영을 요청해야한다.

풀리퀘스트의 반영 여부는 메인테이너의 결정이므로 만약 드롭된다고해도 너무 상심하지 않도록 한다.

원저장소로 돌아가 Pull requests탭의 New pull request 버튼을 클릭한다.

4

상단의 compare across forks를 클릭해 fork한 저장소와의 변경내용을 비교하도록 한다.
좌측은 원저장소, 우측은 작업한 저장소와 브랜치를 선택 후 복잡한 작업이라면 코멘트를 달아서 PR을 Create한다.

5

PR을 열면 누구나 내 코드나 작업한 내용을 볼 수 있게되며, 메인테이너의 확인을 기다린다.
Gitter등을 이용하고 있는 프로젝트라면 해당 커뮤니티에 접속해 확인을 정중히 요청할 수도 있다.

7

메인테이너가 확인 후 merge하면 해당 프로젝트에 최종적으로 기여된 것이다.

6

Finish

오픈 소스 기여에 대해서 더 상세히 알고 싶다면 오픈 소스에 기여하는 방법을 추천한다.