Notice
Recent Posts
Recent Comments
Link
«   2025/07   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Archives
Today
Total
관리 메뉴

ddodoi 님의 블로그

15주차-파트03: 오픈 소스 구성원 역할, 컨트리뷰션 사용 이유, 주의사항, 절차 본문

웹풀스택 일일정리

15주차-파트03: 오픈 소스 구성원 역할, 컨트리뷰션 사용 이유, 주의사항, 절차

ddodoi 2024. 11. 27. 05:21

CHAPTER 1. 오픈소스 구성원 역할, 컨트리뷰션

✔️오픈 소스 구성원 역할

  • 저작자 : 오픈 소스 프로젝트를 만든 사람 또는 조직
  • //메인테이너 : 프로젝트의 방향을 알고 있는/직접 설정한 프로젝트를 관리하는 사람
  • //커미터 : 컨트리뷰터가 컨트리뷰션을 하면 리뷰를 하는 컨트리뷰터, 프로젝트에 반영할지 말지 결정 권한도 가지고 있는 컨트리뷰터
  • 컨트리뷰터 : 오픈 소스 프로젝트에 컨트리뷰션(기여) 활동을 하는 모든 사람
  • 사용자 : 오픈 소스 프로젝트를 사용하는 사람

 

 

✔️컨트리뷰션(Contribution)

  • 오타 수정(ex. README.md rect -> react)
  • 번역(내가 직접? 제안만 해도 컨트리뷰션)
  • 문서 설명 덧붙임
  • 배너 문구 수정 제안
  • UI/UX 제안
  • 제안 - 버그 픽스, 문서 작업, 기능 추가/수정/삭제, 버전/외부 모듈 바꾸기
  • 에러 메세지
  • 리소스
  • 리팩토링(ex. expired <- e)
  • 테스트 케이스 추가

 

 

✔️컨트리뷰선을 하는 이유?

<오픈 소스 저작자>

- 컨트리뷰터들이 버그 찾아줌

- 사용하면서 불편했던 점, 개선할 코드 등등 혼자는 찾을 수 없는 사항들을 찾아줌

 

<오픈 소스 사용자/ 컨트리뷰터>

- 다양한 개발자들에게 리뷰를 받을 수 있음

- 내가 원하는 기능을 추가할 수 있고, 사용자 입장에서 코드 사용 데도 편리함

- 코드 퀄리티를 높을 수 있다. 코드를 보는 시선/ 관점/ 시야

- 오픈 소스 코드 분석 = 코드 문해력

- 협업, 성취감

 

cf. 이력서, 포트폴리오

 

https://www.oss.kr/

 

공개SW 포털 - 공개SW 포털

WELCOME There are a million reasons to use XE3. XpressEngine은 자유로운 웹 콘텐츠 발행을 돕는 CMS입니다. Laravel ...

www.oss.kr

 

 

 

✔️컨트리뷰선 시 주의 사항

- 커뮤니케이션 : 태도, 자세, 말투 -> "겸손"

 

- 소스 코드 충돌

  • Contribute 하고 싶은 내용을 이미 구현하고 있진 않은지. 구현하지 않기로 결정한 건 아닌지
  • 너무 오래된 open 이슈 (ex. hubot : translate korean 2018) - 디스커션이나 커뮤니티 문의
  • 오래된 이슈, 작업하지 않는 이슈, 정리되지 않는 이슈...정리! 일종의 Contribution
  • 시작하기 전에 내가 작업을 시작할 것을 알리는 것이 좋음!( = 이슈 오픈, 디스커션)

- 새롭고, 큰 중요한 기능 추가 하고 싶을 때...

  • 어떤 기능 추가해보고싶은데 생각 어떤지 물어보기
  • 내부적으로 팀원 모집도 추천

- Pull Request를 던질 때

  • 템플릿(틀)이나 문서를 확인하면서 준수할 내용 체크

 

 

 

✔️컨트리뷰선 절차

Contributing 문서 / 가이드

 

1. 오픈소스 프로젝트를 Fork

 

깃허브에서

 

 저작자의 계정                                                             내 계정

 오픈 소스 프로젝트 레포지토리     ------Fork----->    레포지토리(복제)

                                                                                            |

                                                                                            |

2. 내 계정 - 레포지토리 Clone => 내 로컬                          |

                                                                                           |

깃(로컬)에서                                                                       |

                                                                                           |

                                                                                          V

                                                                               내 컴퓨터- 로컬  

 

3. 🌱코드 컨벤션, 🌱커밋메세지.. 코드 구현전에 체크해야하는 "규칙"

 

4. 코드 구현, 수정

- 주석수정

 

5. 내 계정 깃허브 레포지토리(Clone했던)로 Push

 

6. 깃허브의 내 레포지토리 -> 오픈소스 레포지토리 Pull Request

 

 저작자의 계정                                                                       내 계정

 오픈 소스 프로젝트 레포지토리     <-----Pull Request-----    레포지토리(복제)

 

7. Contributor License Agreement

 

8. 리뷰어, 커미터, 메인테이너, 저작자 .... 검토해줄 사람

- 검토 생략하고 바로 merge되는 경우도 있다

 

9. merge되었다 = Pull Request closed 알림

 

10. contrubutor 리스트에 내 계정이 추가 된다