[이제와서 시작하는 GitHub 마스터하기 - 기초편 #4] Repository 이해하기
학습 목표
이 장을 마치면 다음을 할 수 있습니다:
- ✅ Repository가 무엇인지 이해하고 설명할 수 있습니다
- ✅ Public과 Private Repository의 차이를 알 수 있습니다
- ✅ 첫 번째 Repository를 생성할 수 있습니다
- ✅ Repository를 클론하여 로컬에서 작업할 수 있습니다
지난 편 복습
기초편 #3에서는 보안 설정과 인증을 배웠습니다:
- 2단계 인증(2FA) 설정
- Recovery Codes 안전하게 보관
- SSH 키 생성 및 등록 (선택사항)
- 계정 보안 강화
1. Repository란? (쉽게 이해하기)
💡 일상 속 비유로 이해하기
Repository(줄여서 Repo)를 처음 들어보셨나요? 어렵게 생각하지 마세요!
Repository = 똑똑한 프로젝트 폴더
일반 폴더처럼 파일과 폴더를 저장하지만, 특별한 기능들이 추가되어 있습니다:
- 📷 타임머신 기능: 파일이 어떻게 변경되었는지 모든 과거 기록을 저장
- 👥 협업 기능: 여러 사람이 동시에 작업해도 충돌 없이 합칠 수 있음
- 🔄 백업 기능: 내 컴퓨터가 망가져도 GitHub에 백업되어 있음
- 📝 메모 기능: 왜 이렇게 바꿨는지 설명을 남길 수 있음
🎯 실생활 예시
일반 폴더로 작업할 때:
1
2
3
4
5
6
내_프로젝트/
├── index.html
├── index_수정1.html
├── index_최종.html
├── index_진짜최종.html
└── index_진짜진짜최종.html 😵
Repository로 작업할 때:
1
2
3
4
5
6
my-project/ (Git Repository)
└── index.html (하나의 파일에 모든 히스토리 저장 ✨)
├── 2025-01-01: 최초 작성
├── 2025-01-05: 메뉴 추가
├── 2025-01-10: 스타일 개선
└── 2025-01-15: 버그 수정
어떤가요? Repository가 훨씬 깔끔하죠?
Repository의 구성 요소
Repository는 다음과 같은 핵심 구성 요소들로 이루어져 있습니다:
📁 파일과 폴더
- 소스 코드: 프로젝트의 실제 코드 파일들
- 문서: README, 라이선스, 기여 가이드 등
- 리소스: 이미지, 데이터 파일, 설정 파일 등
📜 커밋 히스토리
- 변경 이력: 모든 수정 사항의 기록
- 작성자 정보: 누가 변경했는지 추적
- 타임스탬프: 언제 변경되었는지 기록
🌿 브랜치
- main/master: 메인 개발 브랜치
- develop: 개발 통합 브랜치
- feature/*: 기능 개발 브랜치들
🤝 협업 도구
- Issues: 버그 리포트, 기능 요청, 작업 관리
- Pull Requests: 코드 리뷰와 병합 요청
- Discussions: 커뮤니티 토론과 Q&A
⚙️ 설정
- 보안 설정: 접근 권한, 보안 정책
- 협업자 관리: 팀원 권한 설정
- 웹훅: 외부 서비스 연동
💡 구조도로 보기 (클릭하여 펼치기)
graph LR
A[Repository] --> B[📁 파일과 폴더]
A --> C[📜 커밋 히스토리]
A --> D[🌿 브랜치]
A --> E[🤝 협업 도구]
A --> F[⚙️ 설정]
style A fill:#e1f5fe,stroke:#01579b,stroke-width:3px
style B fill:#fff3e0,stroke:#e65100,stroke-width:2px
style C fill:#f3e5f5,stroke:#4a148c,stroke-width:2px
style D fill:#e8f5e9,stroke:#1b5e20,stroke-width:2px
style E fill:#fce4ec,stroke:#880e4f,stroke-width:2px
style F fill:#f5f5f5,stroke:#424242,stroke-width:2px
Repository 유형 비교
| 유형 | 설명 | 사용 사례 | 비용 |
|---|---|---|---|
| Public | 누구나 볼 수 있음 | 오픈소스 프로젝트, 포트폴리오 | 무료 |
| Private | 초대된 사람만 접근 | 회사 프로젝트, 개인 작업 | 무료 |
| Fork | 다른 repo의 복사본 | 오픈소스 기여, 실험 | 무료 |
| Template | 재사용 가능한 템플릿 | 보일러플레이트, 스타터킷 | 무료 |
2. Repository 생성하기 (따라하기)
🚀 처음 만드는 분들을 위한 상세 가이드
처음 Repository를 만들 때 어디를 클릭해야 할지 막막하시죠? 천천히 따라와 주세요!
Step 1: Repository 생성 시작하기
- GitHub 홈페이지 접속: github.com 로그인
- 우측 상단 “+” 버튼 클릭 (프로필 사진 왼쪽)
- “New repository” 선택
💡 Tip: 키보드 단축키를 사용하고 싶다면?
Ctrl + K(Mac:Cmd + K)를 누르고 “new repository”를 검색하세요!
Step 2: Repository 정보 입력하기
이제 나오는 화면에서 하나씩 채워봅시다:
📝 1. Repository name (필수)
1
입력 예시: my-first-project
- 무엇을 입력하나요? 프로젝트 이름
- 규칙:
- 영어 소문자 사용 (한글 X)
- 단어 사이는 하이픈(-) 사용
- 공백 사용 불가
- 좋은 예시:
todo-app,personal-blog,weather-widget - 나쁜 예시:
내프로젝트,My Project,project!!!
📄 2. Description (선택, 하지만 권장)
1
입력 예시: 할 일 관리를 위한 간단한 웹 앱
- 무엇을 입력하나요? 프로젝트가 무엇을 하는지 한 줄 설명
- 왜 필요한가요? 나중에 내가 봐도, 다른 사람이 봐도 이해하기 쉬워집니다
- 팁: 30자 이내로 간결하게!
🌍 3. Public vs Private (필수 선택)
이게 초보자들이 가장 고민하는 부분이죠!
| 구분 | Public (공개) | Private (비공개) |
|---|---|---|
| 누가 볼 수 있나? | 전 세계 누구나 | 나와 내가 초대한 사람만 |
| 추천 대상 | 포트폴리오, 오픈소스 | 회사 프로젝트, 개인 프로젝트 |
| 검색 노출 | ✅ 가능 | ❌ 불가능 |
| 비용 | 무료 | 무료 |
| 취업 시 활용 | ⭐⭐⭐⭐⭐ 적극 추천! | 보여줄 수 없음 |
🤔 고민되시나요?
- 처음 시작이라면? → Public 추천! (언제든 Private로 변경 가능)
- 개인 정보 포함? → Private 선택
- 포트폴리오 목적? → Public이 필수!
📦 4. Initialize this repository with (선택 항목들)
이 부분이 처음엔 어려울 수 있어요. 하나씩 설명드릴게요!
✅ Add a README file (꼭 체크하세요!)
1
2
3
4
5
6
7
8
9
❓ 이게 뭔가요?
프로젝트 설명서입니다. 방문자가 제일 먼저 보는 문서에요.
✅ 체크하면 좋은 이유:
- 바로 프로젝트 설명 작성 가능
- GitHub 페이지가 빈 화면이 아니라 전문적으로 보임
- 나중에 무엇을 만들었는지 기억하기 쉬움
초보자 추천: 꼭 체크하세요! ⭐
✅ Add .gitignore (언어 선택)
1
2
3
4
5
6
7
8
9
10
❓ 이게 뭔가요?
"이 파일들은 GitHub에 올리지 마!" 라고 지정하는 설정
✅ 어떤 언어를 선택하나요?
- Python 프로젝트 → "Python" 선택
- JavaScript/Node.js → "Node" 선택
- Java → "Java" 선택
- 모르겠으면 → "None" 선택 (나중에 추가 가능)
초보자 추천: 프로젝트 언어에 맞게 선택하세요
✅ Choose a license (라이선스 선택)
1
2
3
4
5
6
7
8
9
❓ 이게 뭔가요?
"내 코드를 다른 사람이 어떻게 사용해도 되는지" 규칙
✅ 어떤 것을 선택하나요?
- 공개 프로젝트이고, 자유롭게 사용해도 OK → "MIT License"
- 잘 모르겠으면 → "None" 선택 (나중에 추가 가능)
- Private 프로젝트 → 선택 불필요
초보자 추천: Public이면 "MIT License", Private이면 선택 안 해도 됨
Step 3: Repository 생성 완료!
모든 정보를 입력했다면:
- 맨 아래 “Create repository” 초록색 버튼 클릭
- 🎉 완성! 내 첫 번째 Repository가 만들어졌습니다!
✅ 초보자를 위한 추천 설정 (복사해서 사용하세요)
처음 시작하는 분들은 이렇게 입력해보세요:
1
2
3
4
5
6
7
Repository name: my-first-project
Description: GitHub 연습용 첫 번째 프로젝트
Public/Private: Public ✅
Initialize with:
- ✅ Add a README file (체크)
- ✅ Add .gitignore (None 선택)
- ✅ Choose a license (MIT License 선택)
이렇게 설정하면 바로 사용 가능한 Repository가 만들어집니다!
💡 Repository 이름 정하기
좋은 이름 예시:
todo-app✅personal-blog✅python-calculator✅
나쁜 이름 예시:
내프로젝트❌ (한글 사용)My Project❌ (띄어쓰기)test123❌ (의미 없음)
📚 명명 규칙 가이드 (자세히 보기)
명명 규칙 가이드
| 규칙 | 설명 | 예시 |
|---|---|---|
| kebab-case | 소문자와 하이픈 사용 | my-awesome-project |
| 의미 있는 이름 | 프로젝트 목적 명시 | invoice-generator |
| 기술 스택 포함 | 주요 기술 언급 | react-todo-app |
| 버전 없음 | 버전은 태그로 관리 | ❌ project-v2 |
프로젝트 유형별 명명 예시
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
웹 애플리케이션:
- blog-platform
- e-commerce-site
- social-media-dashboard
라이브러리/패키지:
- js-utils
- react-components
- python-api-wrapper
학습/튜토리얼:
- learn-typescript
- algorithm-practice
- design-patterns-java
개인 프로젝트:
- portfolio-2025
- personal-blog
- resume-builder
3. 웹에서 Repository 관리하기
좋은 소식! 터미널이나 Git 명령어 없이도 GitHub 웹사이트에서 대부분의 작업을 할 수 있습니다!
소요 시간: 약 10분 난이도: ⭐ (매우 쉬움)
웹에서 파일 추가하기
Repository를 만들었으니, 이제 파일을 추가해봅시다!
방법 1: 파일 업로드
- Repository 페이지로 이동
- “Add file” 버튼 클릭 (페이지 오른쪽 위)
- “Upload files” 선택
- 파일을 드래그 앤 드롭 또는 “choose your files” 클릭
- 커밋 메시지 입력
1
예시: Add project files
- “Commit changes” 녹색 버튼 클릭
방법 2: 새 파일 생성
- Repository 페이지에서 “Add file” 클릭
- “Create new file” 선택
- 파일 이름 입력
1
예시: hello.txt
- 파일 내용 작성
1 2
Hello, GitHub! This is my first file.
- 커밋 메시지 입력
1
예시: Create hello.txt
- “Commit new file” 클릭
웹에서 파일 편집하기
기존 파일을 수정하고 싶으신가요? 웹에서 바로 편집할 수 있습니다!
- 편집할 파일 클릭 (예: README.md)
- 오른쪽 위 연필 아이콘(✏️) 클릭
- 파일 내용 수정
- Preview 탭에서 결과 확인 (Markdown 파일의 경우)
- 아래로 스크롤하여 커밋 메시지 입력
1
예시: Update README with project description
- “Commit changes” 버튼 클릭
웹에서 파일 삭제하기
필요 없는 파일을 삭제하고 싶으신가요?
- 삭제할 파일 클릭
- 오른쪽 위 휴지통 아이콘(🗑️) 클릭
- 커밋 메시지 입력
1
예시: Remove unused file
- “Commit changes” 클릭
폴더 만들기
웹에서는 폴더를 직접 만들 수 없지만, 파일을 만들 때 폴더 경로를 지정하면 자동으로 생성됩니다!
- “Add file” → “Create new file” 클릭
- 파일 이름에 폴더 경로 포함
1
예시: docs/guide.md
- 이렇게 하면 “docs” 폴더가 자동 생성됩니다!
💡 팁:
/를 입력하면 폴더가 생성되고, 다음 입력란으로 넘어갑니다!
실습: 첫 파일 만들기
지금 바로 해봅시다!
- #2편에서 만든 Repository 열기 (my-first-project 등)
- “Add file” → “Create new file” 클릭
- 파일 이름:
hello.txt - 내용:
1 2 3
안녕하세요! 이것은 제 첫 번째 GitHub 파일입니다. 웹에서 만들었어요! 🎉
- 커밋 메시지:
Create my first file - “Commit new file” 클릭
- Repository 메인 페이지로 돌아가서 확인!
축하합니다! 웹에서 파일을 만들고 관리하는 방법을 배웠습니다! 🎉
💡 다음 단계: #7편에서 Git 명령어를 배우면 터미널에서도 같은 작업을 할 수 있습니다. 하지만 지금은 웹만으로도 충분합니다!
자주 묻는 질문 (FAQ)
Q1. Public과 Private 중 어떤 걸 선택해야 하나요?
A: 학습 프로젝트나 포트폴리오는 Public, 개인 프로젝트나 민감한 정보가 있으면 Private를 선택하세요.
Q2. Repository 이름을 나중에 바꿀 수 있나요?
A: 네, Settings에서 변경 가능합니다. 단, URL이 바뀌므로 초기에 신중하게 정하는 것을 추천합니다.
Q3. 웹에서 모든 작업을 할 수 있나요?
A: 대부분 가능합니다! 하지만 복잡한 Git 작업(branch, merge 등)은 터미널이 더 편리합니다. 그건 나중에 배웁니다!
Q4. Repository를 삭제하고 싶어요!
A: Settings → Danger Zone → Delete this repository에서 삭제 가능합니다. 단, 신중하게 하세요. 되돌릴 수 없습니다!
실습 과제
📝 필수 과제
- Public Repository 1개 만들기 (my-first-project)
- README 추가하여 생성하기
- 웹에서 새 파일 만들기 (hello.txt)
- 웹에서 README 편집하기
- 커밋 히스토리 확인하기
🚀 도전 과제
- Private Repository도 만들어보기
- .gitignore와 라이선스 선택해보기
- 폴더 구조 만들기 (docs/guide.md)
- 파일 업로드 기능 사용해보기
마무리
축하합니다! 이제 Repository의 개념을 이해하고, 웹에서 파일을 만들고 관리할 수 있게 되었습니다!
오늘 배운 것:
- ✅ Repository가 무엇인지 이해
- ✅ Repository 생성 방법
- ✅ 웹에서 파일 추가/편집/삭제
- ✅ 폴더 구조 만들기
🎯 다음 단계
다음 편에서는 README 파일을 전문가처럼 작성하는 방법을 배워보겠습니다!
- Markdown 문법 완벽 정리
- 멋진 README 템플릿
- Badge, 이미지, 코드 블록 활용
웹 작업에 익숙해지셨나요? 다음 편에서 만나요! 👋
📚 GitHub 마스터하기 시리즈
🌱 기초편 (입문자)
- GitHub 소개와 계정 만들기
- 프로필 꾸미기와 포트폴리오
- 보안 설정과 인증
- Repository 이해하기 👉 현재 글
- README 작성법
- .gitignore와 라이선스
- 첫 커밋과 관리
- git add와 commit
- git push와 pull
- 실전 워크플로우
- Branch 기본
- Merge와 Rebase
- 브랜치 전략
- Fork와 Clone
- Pull Request
💼 실전편 (중급자)
🚀 고급편 (전문가)
- GitHub Actions 입문
- Actions 고급 활용
- Webhooks와 API
- GitHub Apps 개발
- 보안 기능
- GitHub Packages
- Codespaces
- GitHub CLI
- 통계와 인사이트
