이전 내용
[TIL] 11/25 오픈 소스란?
1. 오픈소스오픈소스란 누구나 특별한 제한 없이 공개 되어 있는 소스코드를 말한다. 오픈소스로 공개 되어 있는 코드에는 검사(리뷰), 수정 등 개선사항을 마음껏 펼칠 수 있다. 또 오픈 소스는
everydayc0ding.tistory.com
[TIL] 11/26 오픈 소스와 깃허브
이전 내용 [TIL] 11/25 오픈 소스란?1. 오픈소스오픈소스란 누구나 특별한 제한 없이 공개 되어 있는 소스코드를 말한다. 오픈소스로 공개 되어 있는 코드에는 검사(리뷰), 수정 등 개선사항을 마음
everydayc0ding.tistory.com
1.6. 오픈 소스 구성원 역할
- 저작자: 오픈 소스 프로젝트를 만든 사람 또는 조직
- 메인테이너: 프로젝트 방향을 알고 있는 / 직접 설정한 프로젝트를 관리하는 컨트리뷰터
- 커미터:
컨트리뷰터가 컨트리뷰션을 하면 리뷰를 하는 사람(사실 이 사람도 컨트리뷰터임) + 프로젝트에 반영할지 말지 결정 권한도 가지 고있음
- 컨트리뷰터: 오픈 소스 프로젝트에 컨트리뷰션(기여) 활동을 하는 모든 사람
- 사용자: 오픈 소스 프로젝트를 사용하는 사람
1.7. 컨트리뷰션 활동 유형
Q. 오픈 소스 프로젝트에 코드를 구현하고, 수정하는 것만 기여를 하는 것일까? X
-> 프로젝트는 요구 사항에 대한 결과물을 내는 것, 즉 코드에 국한되지 않는다!
- 버그 픽스
- 문서 작업
- 기능 추가 / 수정 / 삭제
- 리팩토링
- 버전, 외부 모듈 바꾸는 게 어때?
- 에러 메세지
- 리소스
- 테스트 케이스 추가
1.8. 컨트리뷰션을 하는 이유?
<오픈 소스 저작자>
- 컨트리뷰터들이 버그를 찾아줌
- 사용하면서 불편했던 점, 개선할 코드 등등 혼자는 찾을 수 없는 사항들을 다른 사람들이 찾아줌
<오픈 소스 사용자/컨트리뷰터>
- 내가 원하는 기능을 추가할 수 있고, 사용자 입장에서 코드 사용하는 데도 편리함
- 오픈 소스 코드 분석(=코드 문해력) 길러짐
- 멋진 개발자분들에게 리뷰를 받을 수 있음
- 코드 퀄리티를 높일 수 있음 -> 코드를 보는 시선/관점/시야
- 협업, 성취감
1.9. 컨트리뷰션 주의사항
협업 주의 사항
- 커뮤니케이션: 태도, 자세, 말투 -> 겸손
- 소스 코드 충돌
- Contribution 하고 싶은 내용을 이미 구현하고 있진 않은지, 구현하지 않기로 결정한 건 아닌지
- 시작하기 전에 내가 작업을 시작할 것을 알리는 것이 좋음 (= 이슈 오픈, 디스커션 ...)
- 너무 오래된 open 이슈
- 디스커션이나 커뮤니티 문의
- 오래된 이슈, 작업하지 않는 이슈, 정리되지 않은 이슈 정리 -> 이것도 일종의 Contribution
- 새롭고, 큰 중요한 기능 추가 하고 싶을 때 ..
- 이런 기능 추가해보고 싶은데 어때? -> 물어보기, 프로젝트 방향성에 맞지 않을 수 있음
- 물어보면서 내부적으로 팀원도 모집할 수 있음
- Pull Request 를 던질 때
- 템플릿이나 문서를 확인하면서 준수할 내용 체크 (테스트 유무, 컨벤션 등 .. )
1.10. 컨트리뷰트 절차
1. 오픈 소스 프로젝트를 Fork
(저작자 계정에 있는 레포를 내 깃허브로 복제 해오는 것, 근데 연결이 유지됨)
2. Clone
(내 계정에 복제해온 레포를 내 로컬로 가져옴)
3. 코드 컨벤션 - 커밋 메세지 등.. (코드 구현 전에 체크해야 하는 "규칙")
4. 코드 구현, 수정 & 커밋
(주석 수정)
5. 내 계정 깃 허브 레포로 Push
6. 내 깃허브 레포 -> 오픈 소스(원작자) 레포로 Pull Request
7. Contributor License Agreement (라이센스 동의)
8. 리뷰어, 커미터, 메인테이너, 저작자 -> 코드를 검토해줄 사람들
(코드가 크리티컬 하지 않는다면 바로 머지될 수도 있음)
9. merge 되었다 = Pull Request closed 알림이 옴
(깃허브에서 메일이 옴)
10. 컨트리뷰터 리스트에 내 계정이 추가가 되어 있음
'TIL with Programmers' 카테고리의 다른 글
[TIL] 11/28 오픈소스 프로젝트 찾기 (0) | 2024.11.28 |
---|---|
[TIL] 11/26 오픈 소스와 깃허브 (0) | 2024.11.26 |
[TIL] 11/25 오픈 소스란? (0) | 2024.11.25 |
[TIL] 11/20 (1) | 2024.11.24 |
[TIL] 11/21 (0) | 2024.11.21 |