https://github.com/collabora/WhisperLive
시작하기 전에 저는 대학생 깡깡 iOS 개발자임을 밝힙니다.
아무리 초보 개발자여도 다들 오픈소스에 큰 기여를 할 수 있다고 말씀드리고 싶어 이 글을 작성하게 되었습니다.
저는 whispherLive
라는 STT 오픈소스
에 iOS 클라이언트 코드 전체
를 기여했습니다.
그리고 모든 영어 커뮤니케이션은 GPT와 함께 협의를 통해 작성되었습니다.
사실 오픈 소스 기여는 그냥 프로젝트 PR 올리기를 하는 것과 같습니다. 다만 추가적인 절차가 생깁니다.
추가적인 절차는 아래에서 설명하겠습니다.
프론트
든지 백엔드
든지 기여를 할 방법은 많습니다.
오픈소스 기여는 한 줄을 수정하더라도 가능합니다.
하지만 더욱 큰 기여를 하면 좋겠죠?
보통 에러 수정
이나 기능 추가
, 클라이언트 코드
등이 대표적입니다.
많은 양의 기여이든 1~2줄의 기여이든 초보 개발자도 가능합니다.
제가 해봤으니 다 가능합니다.
저의 방법만이 정답이 아닙니다.
일반적인 방법과 차이가 있다면 댓글 부탁드립니다.
일단 당신이 하려는 작업이 해당 프로젝트 개발자에게 필요한지를 알아야 합니다.
보통 issue를 올리면 필요한지 얘기해주시는 경우가 대부분일 것 입니다. 만약 말씀이 없으시다면 메일을 해보는 것도 좋은 방법입니다.
저는 이메일을 통해 연락을 취하는 방식을 택하였습니다.
대충 내용은
"당신의 프로젝트에 클라이언트, README, 예제(또는 데모 앱)로 기여하고 싶습니다. ~ 내용의 기능이고 Pull Request로 공식 클라이언트로 추가 가능 여부 문의, 프로젝트 스타일에 맞춰 조정할 의사가 있습니다."
입니다.
이렇게 보냈더니
이런 답장이 왔습니다. 다행히도 긍정적으로 답변을 받아서 코드 작성의 기회(?)를 얻었네요.
1️⃣ Fork 하기
2️⃣ 원본 저장소를 upstream으로 추가
3️⃣ 새 브랜치 생성 (브랜치명 규칙 확인!)
4️⃣ 코드 작성
5️⃣ 스테이징
6️⃣ 커밋 (프로젝트의 커밋 컨벤션 따르기!)
7️⃣ 푸시하기
3. PR 올리기
1️⃣ GitHub에서 본인 Fork 저장소 → 해당 브랜치 선택
2️⃣ Pull Request 버튼 클릭 → 원본 저장소의 main 브랜치로 PR 생성
3️⃣ PR 작성
이제 계속 요청을 받고 수정하며 해당 개발자의 마음에 들때까지 수정 작업을 거쳐야합니다.
만약 해당 개발자가 마음에 들어 merge를 한다면 기여 작업은 마무리 됩니다.
https://github.com/collabora/WhisperLive/pull/382
저는 수업 녹음과 요약을 해주는 프로젝트를 하며 작성한 코드를 운좋게 오픈소스 기여까지 할 수 있었습니다.
https://github.com/0361Team/iOS 유익하셨다면 star 한번씩...
여러분도 오픈소스 코드를 활용하신다면 기여각을 노려보시는 것을 추천드립니다.
프로젝트 코드가 아니더라도 오픈소스 기여만을 목적으로 코드 작성을 하는 것도 좋은 방법이라고 생각합니다.
저는 클라이언트 코드 전체를 기여한 덕분에 약 1000줄의 코드를 기여할 수 있었지만 오류 수정
이나 간단한 기능 추가
몇 줄로도 가능하니 시도해보시는 것을 추천드립니다.