본문 바로가기

개발/프로그래머스 데브코스

프로그래머스 데브코스 62일차 with. TS 웹 풀스택

📚요약

지난 시간에는 깃허브에서 오픈 소스에 대해 어떻게 다루고 있는지를 확인했습니다. 이번 시간에는 컨트리뷰션에 대한 전반적인 내용을 살펴보겠습니다.

 

📖Open Source(with. Github)

📄구성원

  • 저작자
  • 메인테이너 : 오픈 소스 프로젝트의 방향성을 잡고 유지해 주는 컨트리뷰터로 없을 수도 있습니다.
  • 커미터 : 코드 리뷰를 하거나 프로젝트에 코드(PR)를 반영할지 말지 결정하는 컨트리뷰터로 없을 수도 있습니다.
  • 컨트리뷰터 : 기여 활동을 하는 모든 사람입니다.
  • 사용자

📄컨트리뷰션 활동

  • 버그 수정
  • 문서 작업
  • 기능 추가/수정/삭제
  • 리팩토링
  • 버전/디펜던시 업데이트
  • 에러/도움 메시지 향상
  • 리소스 사용 향상
  • 테스트 케이스 추가

컨트리뷰터들이 주로 하는 활동은 다양합니다. 위 활동뿐만 아니라 오타 수정, 번역, 배너 문구 수정, UI/UX 제안 등이 있을 수도 있고 앞선 모든 것들을 제안만 해도 컨트리뷰션이라고 할 수 있습니다.

🍯tip! 리액트는 어떻게 컨트리뷰트 할 수 있는지를 문서로 제공하고 있다.
 

How to Contribute – React

A JavaScript library for building user interfaces

legacy.reactjs.org

 

📄컨트리뷰션의 장점 및 사용 이유

저작자 입장

  • 컨트리뷰터들이 버그를 찾아준다
  • 개선 사항을 다양한 입장에서 발견하고 알려준다

사용자 입장

  • 성취감
  • 코드 분석력(시선, 관점)이 상승해 본인의 코드 퀄리티가 좋아진다
  • 원하는 기능을 추가할 수 있고, 다양한 사람들의 후기나 평가를 들어볼 수 있다
  • 코드 리뷰를 받을 수 있다
  • 협업
🍯tip! 대한민국 오픈 소스 소프트웨어 관련 사이트이다. 해당 사이트에서는 교육이나 강의도 운영하기 때문에 관심이 있다면 참고하면 좋을 것 같다.
 

공개SW 포털 - 공개SW 포털

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

www.oss.kr

 

📄컨트리뷰션 주의 사항

  • 커뮤니케이션 : 사람과 사람이 소통하는 문제이기 때문에 주의해야 한다
  • 소스 코드 충돌 : 하고 싶은 내용이 구현되는 중인가, 구현하지 않기로 결정된 것인가를 확인해 보기. 이슈나 디스커션을 이용해 작업의 시작을 알리는 것이 좋다
  • 사전 질문 : 기능을 개발하기 전 사전에 기능이 필요하고 도움이 되는지 앞으로의 방향과 맞는지 물어보고 구현하기
  • 템플릿 확인하기 : 해당 오픈 소스가 사용 중인 템플릿이 있다면 확인해 보고 작업하기

📄컨트리뷰트 절차

  1. Fork : 오픈 소스 프로젝트(레포지토리)를 내 레포지토리에 복제하는 과정
  2. Clone : 내 레포지토리를 내 컴퓨터에 가져오는(복제) 과정
  3. 커밋 규칙(컨벤션) 확인 : 구현 전 해당 오픈 소스 프로젝트에서 지켜야 하는 규칙을 확인해야 한다.
  4. 구현
  5. Push & Pull Request : 구현한 코드를 push 하고 이를 바탕으로 해당 오픈 소스 프로젝트에 Pull Request를 진행한다.
  6. Contributor License Agreement : 컨트리뷰터로서 라이선스 동의 절차 과정
  7. Review(by. committer, maintainer, 저작자, 리뷰어 등) : 구현된 코드에 문제가 없는지 확인하는 과정
  8. Merge & Contributor 리스트에 내 계정 추가 : 코드가 실제 프로젝트에 병합되고 최종적으로 리스트에 계정이 추가된다.

 

다음 시간에 계속...

 

출처 & 참고

김송아 강사님의 강의