오픈소스 프로젝트에 참여하기

안지환·2023년 12월 2일
0

Git 사용법

목록 보기
3/6

⭐️ Overview

GitHub Repository에는 수많은 프로젝트가 있습니다. 그중 누구나 쉽게 참여해서 프로젝트에 기여를 할 수 있습니다.
대표적으로 유명한 오픈소스 프로젝트는 Linux, Netty, armeria 등 있습니다.

간단하지만 누구나 쉽게 참여 할 수 있는 모던 자바스크립트 튜토리얼 프로젝트에 참여해 보았습니다.

오픈 소스 프로젝트에 참여 하기 전 원격 저장소(Remote Repository)에서 프로젝트를 복제를 해야 합니다.
프로젝트 복제를 git clone이 아닌 Fork를 먼저 해야 하는 이유는 다음과 같습니다.

Fork는 오픈 소스 프로젝트에서 또는 사용자가 업스트림 리포지토리에 대한 쓰기 권한이 없는 경우와 같이 아이디어나 변경사항을 업스트림 리포지토리에 다시 제안하기 전에 반복적으로 테스트하는 데 자주 사용됩니다. -- GitHub Docs --

오픈 소스 프로젝트는 누구나 참여는 가능하지만 수정, 변경에 대한 권한은 가지고 있지 않습니다. 그렇기에 버그 수정과 변경 사항을 원본 제작자에게 제안을 주기 위해서 Fork로 프로젝트를 복제하고 원본 제작자에게 제안을 보낼 수 있습니다.

Task1. 오픈 소스 프로젝트 fork 복제하기

  1. 오픈 소스 프로젝트에 Fork 버튼을 클릭합니다

  2. 오픈 소스 프로젝트 원격 저장소가 내 계정으로 복제가 됩니다.

  3. 내 계정에 복제된 오픈 소스 프로젝트를 로컬 저장소로 복제합니다.

    https://github.com/내계정/ko.javascript.info.git

  4. 로컬 저장소에 프로젝트 폴더를 저장합니다.

Task2. 오픈 소스 프로젝트과 로컬 저장소 연결하기

  1. 오픈 소스 프로젝트를 로컬 저장소에 저장 여부를 확인합니다.
git remote -v
  1. git 버전마다 다를 수 있지만 origin으로 Fork 된 원격 저장소가 연결된 것을 확인합니다.
origin	https://github.com/jihwooon/ko.javascript.info.git (fetch)
origin	https://github.com/jihwooon/ko.javascript.info.git (push)
  1. 오픈 소스 프로젝트에는 연결이 되어 있지 않습니다. 이때 오픈 소스 프로젝트에 연결해야 합니다.
git remote add upstream https://github.com/javascript-tutorial/ko.javascript.info.git
  1. 오픈 소스 프로젝트에 연결된 것을 확인합니다.
origin	https://github.com/jihwooon/ko.javascript.info.git (fetch)
origin	https://github.com/jihwooon/ko.javascript.info.git (push)
upstream	https://github.com/javascript-tutorial/ko.javascript.info.git (fetch)
upstream	https://github.com/javascript-tutorial/ko.javascript.info.git (push)

Task3. 오픈 소스 프로젝트에 PullRequest 전달하기

프로젝트에 버그 및 수정사항이 발견되어 원작자에게 Pull Request를 보냅니다.

  1. 변경된 내용을 스테이징 영역(staging area)에 추가합니다.
git add . # 온점(.)은 전체를 의미합니다
  1. 스테이징 영역에서 git 저장소에 내용을 저장합니다.
git commit
  1. git 저장소에 변경된 내용을 오픈 소스 프로젝트에 올리기 전 업데이트 된 내용을 확인합니다.
git fetch upstream master
  1. 변경된 내용이 존재하면 작업 내용을 현재 브랜치에 합칩니다.
git rebase upstream/master
  1. 작업 내용을 오픈 소스 프로젝트에 올립니다.
git push origin <<브랜치명>>
  1. 오픈 소스 프로젝트 Pull request을 확인합니다.

  2. 원작자가 Pull request를 확인을 하고 리뷰를 남깁니다.

  3. 코드 리뷰가 완료가 되고 승인이 되면 Merge를 합니다.

오픈 소스 프로젝트에 기여하는 방법을 정리했습니다. 프로젝트마다 브랜치 작명, PR 방법, Issue 관리 등 방법이 다양합니다.
프로젝트에 따라 방법을 따라가면 누구나 쉽게 프로젝트에 기여할 수 있습니다.

오픈소스 기여 링크

모던 자바스크립트 튜토리얼 프로젝트 번역에 기여한 내용을 확인 할 수 있습니다.

참고사항

profile
BackEnd Developer

0개의 댓글