[week16] 프로젝트 : 오픈소스 기반의 웹 파이프라인 구축 (4) - 04/30

Kyulee·2026년 4월 29일

TIL 

목록 보기
80/93
post-thumbnail

이번 시간에는 오픈 소스 기여를 처음 경험해보는 사람들을 위해 만들어진 first-contributions 프로젝트를 통해 기여 실습을 진행하고, 실제로 기여할 오픈 소스 프로젝트를 탐색하는 방법까지 정리했습니다.


1. Intro

오픈 소스 기여가 좋다는 것은 알지만, 막상 어디서부터 시작해야 할지 막막한 경우가 많습니다. 이번 시간에는 그 첫걸음을 낮은 허들로 경험해볼 수 있는 first-contributions 프로젝트를 활용해 기여의 전체 흐름을 직접 익혀보았습니다.


2. first-contributions 프로젝트 알아보기

first-contributions 는 오픈 소스 기여를 처음 시작하는 사람들이 실제 기여 과정을 안전하게 연습할 수 있도록 만들어진 프로젝트입니다.

  • 깃허브에서 first-contributions 를 검색하면 찾을 수 있습니다.
  • 전 세계 수많은 입문자들이 이 프로젝트에 PR을 보내며 첫 기여를 경험합니다.
  • 한국어를 포함한 다양한 언어로 기여 가이드를 제공하고 있어 진입 장벽이 낮습니다.

기여 내용은 간단합니다. Contributors.md 파일에 자신의 이름을 추가하는 것입니다. 내용 자체는 단순하지만, Fork → Clone → 브랜치 생성 → 수정 → PR 제출이라는 기여의 전체 흐름을 처음부터 끝까지 직접 경험할 수 있다는 점에서 매우 유익합니다.


3. first-contributions 기여 실습 — 가이드라인 확인

본격적인 실습 전에 프로젝트의 README.md 와 기여 가이드를 먼저 확인합니다.

확인한 주요 내용입니다.

  • 어떤 파일을 수정해야 하는지 — Contributors.md 에 이름을 추가합니다.
  • 브랜치 명명 규칙 — add-이름 형식으로 브랜치를 생성합니다.
  • 커밋 메시지 형식 — Add 이름 to Contributors list 형식으로 작성합니다.
  • PR 제출 방법 — Fork한 레포지토리에서 원본으로 PR을 제출합니다.

가이드라인만 잘 따라도 기여가 반려될 확률이 크게 줄어들기 때문에 반드시 먼저 읽고 시작하는 습관을 들이는 것이 중요합니다.


4. first-contributions 기여 실습 — PR 보내기 v1

가이드라인을 확인한 뒤 실제 기여를 진행했습니다.

# 1. 원본 레포지토리를 내 계정으로 Fork합니다 (깃허브 UI에서 진행)

# 2. Fork한 레포지토리를 로컬로 Clone합니다
git clone https://github.com/내계정/first-contributions.git

# 3. 작업 브랜치를 생성합니다
git checkout -b add-내이름

# 4. Contributors.md 파일에 내 이름을 추가합니다

# 5. 변경 사항을 커밋합니다
git add Contributors.md
git commit -m "Add 내이름 to Contributors list"

# 6. Fork한 레포지토리로 Push합니다
git push origin add-내이름

Push가 완료되면 깃허브에서 자동으로 PR 생성 버튼이 나타납니다. 버튼을 클릭해 원본 레포지토리로 PR을 제출하면 첫 번째 기여가 완료됩니다.


5. first-contributions 기여 실습 — PR 보내기 v2

v1에서 기본적인 흐름을 익혔다면, v2에서는 원본 레포지토리에 업데이트가 생겼을 때 내 Fork를 최신 상태로 동기화하는 방법도 함께 실습했습니다.

# 원본 레포지토리를 upstream으로 등록합니다
git remote add upstream https://github.com/firstcontributions/first-contributions.git

# upstream의 최신 변경 사항을 가져옵니다
git fetch upstream

# 내 main 브랜치에 upstream 변경 사항을 병합합니다
git checkout main
git merge upstream/main

원본 프로젝트는 계속해서 업데이트되기 때문에 기여하기 전에 항상 최신 상태로 동기화하는 것이 충돌(conflict)을 방지하는 좋은 습관입니다.


6. 기여할 오픈 소스 프로젝트 찾는 방법

first-contributions 실습을 마친 뒤, 실제로 기여할 수 있는 오픈 소스 프로젝트를 탐색하는 방법을 배웠습니다.

깃허브 탐색 활용

깃허브의 Explore 와 Topics 기능을 활용하면 관심 분야의 오픈 소스 프로젝트를 쉽게 찾을 수 있습니다. 특히 다음과 같은 검색 필터가 유용합니다.

필터설명
good first issue입문자가 기여하기 좋은 난이도의 이슈입니다
help wanted메인테이너가 외부 도움을 원하는 이슈입니다
bug버그 수정 관련 이슈입니다
documentation문서 작성·수정 관련 이슈로 진입 장벽이 낮습니다

유용한 탐색 사이트

깃허브 외에도 오픈 소스 프로젝트를 찾는 데 도움이 되는 서비스들이 있습니다.

  • goodfirstissue.dev — good first issue 로 태그된 이슈만 모아서 보여주는 사이트입니다.
  • CodeTriage — 다양한 오픈 소스 프로젝트의 이슈를 구독하고 매일 이메일로 받아볼 수 있습니다.
  • Up For Grabs — 기여자를 환영하는 프로젝트들을 모아둔 사이트입니다.

기여할 프로젝트를 고를 때 체크할 것들

단순히 이슈가 있다고 해서 무조건 좋은 기여 대상인 것은 아닙니다. 프로젝트를 선택할 때는 다음 사항을 먼저 확인하는 것이 좋습니다.

  • 최근 커밋이 활발한지 — 관리가 중단된 프로젝트에 기여해도 Merge되지 않을 수 있습니다.
  • PR이 적절히 처리되고 있는지 — 오래된 PR이 쌓여있다면 관리가 소홀한 신호일 수 있습니다.
  • CONTRIBUTING.md가 있는지 — 기여 가이드가 잘 갖춰진 프로젝트일수록 기여하기 수월합니다.
  • 커뮤니티 분위기가 건전한지 — 이슈나 PR의 댓글을 살펴보면 분위기를 파악할 수 있습니다.

7. 기여 실습

탐색한 오픈 소스 프로젝트를 대상으로 실제 기여를 진행했습니다.

실습에서 겪은 전체 흐름을 정리하면 다음과 같습니다.

1. 기여할 이슈를 찾고 담당하겠다는 의사를 댓글로 표현합니다
2. 프로젝트를 Fork하고 로컬에 Clone합니다
3. 이슈에 맞는 브랜치를 생성하고 작업을 진행합니다
4. 커밋 컨벤션에 맞게 커밋 메시지를 작성합니다
5. Fork한 레포지토리로 Push하고 원본에 PR을 제출합니다
6. 메인테이너의 리뷰를 기다리고 요청 사항이 있으면 반영합니다
7. 최종 Merge가 되면 기여 완료입니다

처음에는 낯설고 긴장되는 과정이었지만, first-contributions에서 흐름을 익혀두었기 때문에 실제 프로젝트에서도 단계별로 침착하게 진행할 수 있었습니다.

profile
안녕하세요 매일의 배움을 기록으로 자산화하는 개발자 이규현입니다 😊

0개의 댓글