포스트

[GitHub 100일 챌린지] Day 11 - Repository 개념 이해하기

[GitHub 100일 챌린지] Day 11 - Repository 개념 이해하기

100일 챌린지 Day 11 - Repository는 프로젝트의 모든 것을 담는 저장소입니다

배울 내용

  1. Repository가 무엇인지
  2. Repository의 구성 요소
  3. Public vs Private Repository

Topic1. Repository란?

Repository(저장소) = 프로젝트 보관함

GitHub에서 Repository(줄여서 Repo)는 프로젝트의 모든 파일과 버전 히스토리를 저장하는 공간입니다.

실제 폴더와 차이점

1
2
3
4
5
6
7
8
9
10
11
12
일반 폴더:
📁 my-project/
  ├── index.html
  └── style.css

GitHub Repository:
📦 my-project/ (Repository)
  ├── index.html
  ├── style.css
  ├── README.md (프로젝트 설명서)
  ├── .git/ (버전 관리 정보)
  └── 히스토리 (누가, 언제, 무엇을 변경했는지)

핵심 차이:

  • 버전 관리: 모든 변경 이력 추적
  • 협업 기능: 여러 사람이 동시 작업
  • 백업: 클라우드 저장소로 안전 보관

해보기: 다른 사람의 Repository 둘러보기

1
2
3
4
1. GitHub 홈페이지 접속
2. 검색창에 "awesome-python" 입력
3. vinta/awesome-python Repository 클릭
4. 파일 목록, README, Issues, Pull requests 탭 둘러보기

결과: 인기있는 오픈소스 Repository의 구조를 파악할 수 있습니다


Topic2. Repository 구성 요소

Repository는 다양한 요소로 구성됩니다:

필수 요소

1. 파일과 폴더

1
2
3
4
5
프로젝트의 실제 코드와 리소스:
- 소스 코드 (.js, .py, .java 등)
- 설정 파일 (.json, .yml 등)
- 문서 (.md, .txt 등)
- 이미지/에셋 (.png, .svg 등)

2. README.md

1
2
3
4
5
프로젝트 소개서:
- 프로젝트 설명
- 설치 방법
- 사용 예제
- 기여 방법

3. Commits (커밋)

1
2
3
4
변경 이력의 스냅샷:
📸 Commit 1: "프로젝트 초기화"
📸 Commit 2: "로그인 기능 추가"
📸 Commit 3: "버그 수정"

선택 요소

4. .gitignore

1
2
3
4
Git이 무시할 파일 목록:
node_modules/
.env
*.log

5. LICENSE

1
2
3
4
오픈소스 라이선스:
- MIT: 자유롭게 사용 가능
- GPL: 수정 시 소스 공개 필요
- Apache: 특허 보호 포함

6. Issues / Pull Requests

1
2
3
협업 도구:
- Issues: 버그 리포트, 기능 요청
- Pull Requests: 코드 변경 제안

해보기: 아무 Repository에서 구성 요소 찾기

1
2
3
4
1. github.com/rails/rails 접속
2. README.md 찾아보기 (↓ 스크롤하면 보임)
3. LICENSE.md 파일 클릭
4. "Commits" 링크 클릭해서 히스토리 확인

결과: Repository의 기본 구조를 이해할 수 있습니다


Topic3. Public vs Private Repository

GitHub에는 두 가지 저장소 유형이 있습니다:

Public Repository (공개)

1
2
3
4
5
6
7
8
9
10
11
특징:
✅ 누구나 볼 수 있음
✅ 검색 가능
✅ 무료 무제한
✅ 오픈소스에 적합

사용 예:
- 오픈소스 라이브러리
- 포트폴리오 프로젝트
- 학습 자료
- 블로그/문서

장점:

  • 🌟 포트폴리오: 취업/이직 시 코드 실력 증명
  • 🤝 협업: 전 세계 개발자와 협업 가능
  • 📈 성장: 피드백 받고 배울 수 있음
  • 인지도: Star 받으면 동기부여

단점:

  • ⚠️ 보안: 비밀번호, API 키 노출 주의
  • ⚠️ 저작권: 코드 복사/도용 가능성

Private Repository (비공개)

1
2
3
4
5
6
7
8
9
10
11
특징:
✅ 나와 초대한 사람만 볼 수 있음
✅ 검색 불가
✅ 무료 계정도 무제한
✅ 회사/개인 프로젝트에 적합

사용 예:
- 회사 프로젝트
- 개인 메모
- 민감한 정보 포함
- 완성 전 프로젝트

장점:

  • 🔒 보안: 외부 노출 걱정 없음
  • 🚧 WIP: 완성 전에도 안전하게 작업
  • 💼 업무: 회사 코드 관리

단점:

  • 포트폴리오 불가: 외부에서 볼 수 없음
  • 협업 제한: 초대한 사람만 참여

비교표

구분 Public Private
가격 무료 무료
가시성 전체 공개 초대자만
용도 오픈소스, 포트폴리오 회사, 개인 프로젝트
검색 가능 불가능
Star 가능 불가능

해보기: Public Repository 탐색하기

1
2
3
4
1. GitHub 검색창에 관심 기술 검색 (예: "react todo")
2. Star 개수 많은 Repository 클릭
3. Code, Issues, Pull requests 탭 둘러보기
4. Star 버튼 눌러보기 (⭐)

결과: Public Repository의 오픈소스 문화를 경험할 수 있습니다


정리

완료 체크:

  • Repository가 일반 폴더와 어떻게 다른지 설명할 수 있다
  • Repository의 주요 구성 요소를 알고 있다
  • Public과 Private의 차이를 이해했다

핵심 요약:

1
2
3
4
Repository = 프로젝트 보관함
- 파일 + 버전 히스토리 + 협업 도구
- Public: 포트폴리오, 오픈소스
- Private: 회사, 개인 프로젝트

다음: Day 12 - 첫 Repository 생성

이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.