지원할 수 있는 위치 식별
이 단원에서는 오픈 소스 기여를 시작할 수 있는 방법을 설명합니다. 또한 문제 및 태그를 사용하여 기여할 작업을 찾습니다.
오픈 소스 소프트웨어는 누구나 자유롭게 사용, 수정 및 공유할 수 있습니다. 오픈 소스 소프트웨어를 사용하면 누구나 어떤 용도로든 프로젝트를 보고 수정하고 배포할 수 있습니다. 오픈 소스 소프트웨어의 뒷받침 개념은 코드를 공유함으로써 신뢰할 수 있는 더 나은 소프트웨어를 끌어낸다는 것입니다.
오픈 소스 프로젝트에 기여하는 방법에는 여러 가지가 있습니다. 처음으로 기여할 때 무서운 경험을 하는 경우도 많지만 그래서는 안 될 것입니다. 오픈 소스는 모든 사용자를 위한 장소이며 기여는 모든 수준에서 발생합니다.
기여가 필요한 오픈 소스 프로젝트 찾기
이미 사용하고 있거나 사용하려는 프로젝트를 고려하여 시작할 수 있습니다. 프로젝트와 관련 커뮤니티에 대해 잘 알고 있으면 더 쉽게 기여할 수 있습니다.
프로젝트의 추가 정보 파일을 읽는 동안 끊어진 링크 또는 일부 오타를 찾을 수 있습니다. 항목이 예상대로 작동하지 않거나 설명서가 최신 상태가 아닌 것을 알 수도 있습니다. 모두 프로젝트를 지원하고 기여하는 데 유용한 기회입니다.
팁
중요한 팁: ‘모든’ 종류의 기여는 유용합니다. 경험 수준이나 프로젝트에 관한 지식은 여기에서 중요하지 않습니다. 누구나 기여할 수 있는 무언가가 있습니다. 자신감을 가지세요. 여기서 가장 중요한 것은 지원하겠다는 의지입니다.
GitHub 검색 사용
GitHub 검색을 사용하여 토픽 및 관련 프로젝트를 탐색할 수도 있습니다. GitHub 검색으로 이동하여 토픽 단어를 입력합니다.
기계 학습에 관심이 있다고 가정해 보겠습니다.
그런 다음 왼쪽 사이드바에서 항목을 선택하여 검색 범위를 좁힐 수 있습니다.
여기서 검색 키워드 관련 리포지토리와 커뮤니티 멤버가 큐레이팅한 리포지토리를 찾을 수 있습니다.
오픈 소스 프로젝트 익히기
여기서 중요한 것은 모든 오픈 소스 커뮤니티는 다르다는 것입니다. 프로젝트를 찾은 다음 프로젝트와 관련 기여 지침을 숙지해야 합니다.
대부분의 프로젝트는 리포지토리의 최상위 수준에 관련 문서가 있습니다.
- 면허: 프로젝트에 오픈 소스 라이선스가 포함되어야 합니다. 프로젝트에 라이선스가 없는 경우 오픈 소스가 아닙니다.
- 추가 정보: README 파일은 일반적으로 프로젝트의 시작 페이지 역할을 합니다. 일반적으로 프로젝트 사용을 시작하는 방법에 대한 정보를 제공합니다. 일반적으로 커뮤니티에 기여하는 방법에 대한 정보도 여기에 추가합니다.
- 기여: 이름에서 설명한 대로 이 문서에서는 프로젝트에 기여하는 방법에 대한 지침을 제공합니다. 일반적으로 기여 프로세스가 작동하는 방법을 설명하고 개발 환경을 설정하는 자세한 방법을 포함합니다.
- CODE_OF_CONDUCT: 행동 강령은 지역 사회 구성원에 대한 기본 규칙을 설정합니다. 그러면 커뮤니티를 안전하고 환영받는 환경으로 만드는 데 도움이 됩니다.
모든 프로젝트에 CONTRIBUTING 문서나 CODE_OF_CONDUCT 문서가 있는 것은 아니지만 해당 문서는 프로젝트가 얼마나 친숙하고 환영받는지를 보여 주는 좋은 지표입니다.
오픈 소스 기여자 및 유지 관리자는 전 세계에서 옵니다. 프로젝트에는 일반적으로 토론을 구성하고 도움을 요청하기 위한 여러 소통 채널이 있습니다. 커뮤니티를 이해하는 데 좋은 방법은 관련 소통 채널을 읽는 것입니다.
-
문제 추적기: 사람들이 프로젝트와 관련된 문제 및 작업을 논의하는 위치입니다. GitHub에서 문제를 찾으려면 GitHub에서 리포지토리의 기본 페이지로 이동하여 URL의 끝에
/issues를 추가할 수 있습니다(예: https://github.com/jupyter/notebook/issues). -
풀 리퀘스트: 프로젝트의 변경 사항을 사람들이 논의하고 검토하는 곳입니다. 프로젝트의 URL에
pulls를 추가하여 GitHub에서 찾을 수 있습니다(예: https://github.com/jupyter/notebook/pulls). - 채팅 채널 및 포럼: 일부 프로젝트는 Slack, Gitter 및 IRC와 같은 채팅 채널 또는 대화 및 토론을 위해 담론과 같은 포럼을 사용합니다.
수행할 작업 식별
지금까지 프로젝트를 찾고, 기여 지침을 읽었으므로 이제 기여할 준비가 되었습니다.
수행할 작업(예: 끊어진 링크 수정, 문서 업데이트)을 이미 파악했을 것입니다. 도움이 되는 초보자에게 친숙한 문제를 찾는 좋은 방법은 프로젝트의 /contribute URL(예: https://github.com/jupyter/notebook/contribute)을 방문하는 것입니다.
contribute URL에 표시되는 대부분의 문제에는 good-first-issue, help wanted, beginner-friendly와 같은 레이블이 있습니다. 레이블은 문제에 대한 최상위 정보와 필요한 지원 유형을 제공하는 데 자주 사용됩니다.
레이블 페이지(예: https://github.com/jupyter/notebook/labels)로 이동할 수 있습니다. 그런 다음, 관심 있는 기여 유형에 레이블(예: help wanted, discussion 또는 기타 관련 레이블)이 있는 문제를 선택할 수 있습니다.
문제를 탐색할 때 일부 문제에 다른 문제나 끌어오기 요청이 연결된 것을 확인할 수도 있습니다.
프로젝트 스폰서
오픈 소스에 기여하는 방법에는 여러 가지가 있습니다. 코드, 리더십, 멘토십, 설계 등을 통해 오픈 소스 에코시스템을 빌드하고 유지 관리하는 담당자를 재정적 지원할 수 있습니다.
오픈 소스는 자원봉사에 크게 의존합니다. GitHub Sponsors를 사용하면 프로젝트와 개인에게 자금을 제공하여 원하는 인정을 제공하면서 오픈 소스 작업을 유지하도록 지원합니다.
프로젝트가 GitHub 스폰서를 통해 스폰서쉽을 받을 수 있는 경우 프로젝트의 기본 페이지에서 스폰서 단추를 찾을 수 있습니다.
후원 계층을 선택하고 기여를 공개할지 여부를 선택합니다.
단원 요약
이 단원에서는 오픈 소스 기여를 시작하는 방법을 살펴보았습니다. 작업할 프로젝트를 선택하고 GitHub 문제 및 레이블을 사용하여 수행할 작업을 식별하는 방법을 알게 되었습니다.
다음은 처음으로 프로젝트와 상호 작용하는 경우에 사용할 유용한 검사 목록입니다.
- 라이선스가 있나요?
- 유지 관리자와 기여자가 문제 및 끌어오기 요청 토론은 적극적으로 사용하나요?
- 프로젝트에서 초보자를 위한 레이블(예:
help wanted또는good first issue)을 사용하나요? - 프로젝트에 사용 규정이 있나요?
- 프로젝트에 명확한 기여 지침이 있나요?
마지막으로 모든 기여는 환영되며 사용자의 아이디어와 기여는 오픈 소스 에코시스템에 큰 도움이 됩니다. 코드 제출, 프로젝트 논의에 기여, GitHub Sponsors를 통해 프로젝트 후원 등 오픈 소스에 기여하는 방법에는 여러 가지가 있습니다.