오픈소스 기여 첫걸음부터 PR까지 (실습 후기 & 정리)
📌 들어가며
개발을 하다 보면 한 번쯤은 이런 생각을 하게 된다.
“나도 오픈소스에 기여해보고 싶다.”
하지만 막상 시작하려고 하면 막막하다.
- 어디서 시작하지?
- PR은 어떻게 보내지?
- 내가 기여해도 되는 수준일까?
이번에 나는 오픈소스 기여 과정을 처음부터 끝까지 직접 경험하면서
이러한 궁금증들을 하나씩 해결해볼 수 있었다.
이 글에서는
👉 오픈소스 개념 이해
👉 first-contributions 실습
👉 PR 보내는 과정
👉 실제 프로젝트 탐색
까지의 과정을 정리해보려고 한다.
🌱 오픈소스란 무엇인가?
오픈소스(Open Source)는
소스 코드가 공개되어 누구나 수정하고 기여할 수 있는 프로젝트를 의미한다.
대표적인 예시로는:
- React
- Node.js
- Express
- Prisma
같은 것들이 있다.
즉 우리가 사용하는 대부분의 기술들이
이미 누군가의 오픈소스 기여로 만들어진 것이다.
🤔 왜 오픈소스에 기여해야 할까?
오픈소스 기여는 단순히 “좋은 일”이 아니라
개발자로서 굉장히 큰 장점을 준다.
🔹 1. 실무와 가장 가까운 경험
- 실제 협업 방식 경험 (PR, 코드 리뷰)
- Git 흐름 이해 (fork → branch → PR)
🔹 2. 코드 퀄리티 상승
- 다른 개발자의 코드 스타일 학습
- 리뷰를 통한 피드백
🔹 3. 포트폴리오로 활용 가능
- GitHub 활동 기록으로 남음
- 면접에서 어필 가능
🛠 first-contributions로 첫 기여 경험하기
처음 기여는 first-contributions 프로젝트로 진행했다.
이 프로젝트는 초보자를 위해 만들어진
👉 “오픈소스 기여 연습용 프로젝트”이다.
📌 전체 흐름
- 저장소 Fork
- 로컬에 Clone
- 새로운 Branch 생성
- contributors 파일 수정
- Commit & Push
- Pull Request 생성
✍️ 실제 내가 했던 작업
1. Fork & Clone
git clone https://github.com/내아이디/first-contributions.git
cd first-contributions
2. 브랜치 생성
git checkout -b feat-add-my-name
3. 파일 수정
Contributors.md 파일에 내 이름 추가
4. 커밋
git add .
git commit -m "[feat] 추가: 내 이름 contributors에 등록"
5. 푸시
git push origin feat-add-my-name
6. PR 생성
GitHub에서 버튼 클릭 → PR 생성
👉 이 과정이 처음에는 가장 신기했다.
🔥 PR(Pull Request)이란?
PR은 쉽게 말하면
"내가 수정한 코드를 이 프로젝트에 반영해주세요"
라는 요청이다.
📌 PR의 핵심 구성
- 제목: 무엇을 했는지
- 내용: 왜 했는지 + 어떻게 했는지
- 변경사항: 코드 영향 범위
✨ 내가 작성한 PR 예시
## 🔎 개요
contributors 파일에 내 이름을 추가했습니다.
## 📝 작업 내용
- Contributors.md 파일에 이름 추가
## 👀 변경 사항
- 단순 텍스트 추가
💡 PR을 보내면서 느낀 점
1. 생각보다 어렵지 않다
막연히 어렵다고 생각했는데
👉 실제로 해보니 Git만 알면 충분했다.
2. 협업의 기본 구조를 이해하게 됨
- 브랜치 전략
- 코드 리뷰
- PR 흐름
이걸 한 번 경험한 것만으로도
👉 협업 이해도가 확 올라갔다.
3. “기여”의 기준이 생각보다 낮다
처음에는
“이 정도로 PR 보내도 되나?”
싶었는데
👉 오타 수정, 문서 수정도 충분한 기여였다.
🔍 오픈소스 프로젝트 탐색하기
실습 이후에는
직접 기여할 프로젝트를 찾아보는 과정도 진행했다.
📌 프로젝트 선택 기준
나는 아래 기준으로 찾았다:
✔️ 1. 스타 수 (인기)
- 너무 작은 프로젝트는 정보 부족
- 너무 큰 프로젝트는 진입장벽 있음
👉 적당한 규모가 좋다
✔️ 2. Good First Issue 존재 여부
GitHub에서:
label: good first issue
👉 초보자용 이슈
✔️ 3. 문서가 잘 정리되어 있는가
- README
- CONTRIBUTING.md
👉 이게 없으면 힘들다
🧠 앞으로의 목표
이번 경험을 통해 단순히 “연습”이 아니라
👉 실제 기여로 이어가고 싶다는 생각이 들었다.
🔥 다음 단계 목표
- 실제 서비스 프로젝트 기여
- 버그 수정 PR 도전
- 문서 개선 PR
- 작은 기능 추가
🎯 마무리
이번 오픈소스 실습을 통해 느낀 점은 하나다.
“오픈소스는 생각보다 가까운 곳에 있다.”
처음이 어렵지
👉 한 번 해보면 그 다음은 훨씬 쉽다.
✨ 한 줄 정리
오픈소스 기여는 특별한 사람이 하는 게 아니라,
한 번 시도해본 사람이 계속 하는 것이다.
'pgms' 카테고리의 다른 글
| [17주차] - [9기] 타입스크립트로 함께하는 웹 풀 사이클 개발(React, Node.js) 10회차 - 76 (0) | 2026.05.06 |
|---|---|
| [17주차] - [9기] 타입스크립트로 함께하는 웹 풀 사이클 개발(React, Node.js) 10회차 - 75 (0) | 2026.05.04 |
| [16주차] - [9기] 타입스크립트로 함께하는 웹 풀 사이클 개발(React, Node.js) 10회차 - 73 (0) | 2026.04.29 |
| [16주차] - [9기] 타입스크립트로 함께하는 웹 풀 사이클 개발(React, Node.js) 10회차 - 72 (0) | 2026.04.28 |
| [16주차] - [9기] 타입스크립트로 함께하는 웹 풀 사이클 개발(React, Node.js) 10회차 - 71 (0) | 2026.04.27 |