🎯 100일 챌린지 소개
“이제와서 시작하는 GitHub 마스터하기” 100일 챌린지에 오신 것을 환영합니다!
이 시리즈는 GitHub 초보자부터 고급 사용자까지, 하루 10-15분 투자로 100일 후 GitHub 전문가가 되는 것을 목표로 합니다.
핵심 특징
- 📅 100일 완주 프로그램: 하루 한 가지씩 체계적 학습
- ⏱️ 부담 없는 학습량: 매일 10-15분 (읽기 5분 + 실습 10분)
- 🎓 입문부터 고급까지: 단계적 난이도 상승
- 💼 실전 중심: GitHub 실무 활용 능력 향상
📚 10 Phases 구조
graph TD
Start[Day 1: 시작] --> P1[Phase 1-2<br/>GitHub 웹 기반]
P1 --> P2[Phase 3-4<br/>Git CLI 기초]
P2 --> P3[Phase 5-6<br/>브랜치/협업]
P3 --> P4[Phase 7-8<br/>고급 명령어]
P4 --> P5[Phase 9-10<br/>자동화/실전]
P5 --> End[Day 100: 완주!]
style Start fill:#4CAF50
style End fill:#FF6B6B
난이도 곡선
1
2
3
4
5
6
7
8
9
10
11
12
13
| ⭐⭐⭐⭐⭐ | ╱╱╱
⭐⭐⭐⭐ | ╱╱╱╱╱╱
⭐⭐⭐ | ╱╱╱╱╱╱╱╱
⭐⭐ | ╱╱╱╱╱╱╱╱
⭐ | ╱╱╱
+----------------------------------------
Day 1 20 40 60 80 100
Phase 1-2: ⭐⭐ 웹 기반 (쉬움)
Phase 3-4: ⭐⭐⭐ CLI 명령어 (보통)
Phase 5-6: ⭐⭐⭐⭐ 브랜치/협업 (중급)
Phase 7-8: ⭐⭐⭐⭐ 고급 기능 (어려움)
Phase 9-10: ⭐⭐⭐⭐⭐ 자동화/실전 (고급)
|
📋 전체 커리큘럼
Phase 1: GitHub 입문 (Day 1-10) 🥉
목표: GitHub 계정 완벽 설정
Week 1: 계정과 프로필 (Day 1-5)
Week 2: 보안과 인터페이스 (Day 6-10)
Phase 2: Repository 기초 (Day 11-20) 🥉
목표: 첫 저장소 완성
Week 3: 저장소 시작 (Day 11-15)
| Day | 제목 | 난이도 | 상태 |
| 11 | Repository 개념 이해 | ⭐ | 📝 |
| 12 | 첫 Repository 생성 | ⭐ | 📝 |
| 13 | README.md 기본 작성 | ⭐⭐ | 📝 |
| 14 | README.md 구조화 | ⭐⭐ | 📝 |
| 15 | README.md 고급 기능 | ⭐⭐ | 📝 |
Week 4: 저장소 설정 (Day 16-20)
| Day | 제목 | 난이도 | 상태 |
| 16 | .gitignore 이해하기 | ⭐⭐ | 📝 |
| 17 | 언어별 .gitignore 작성 | ⭐⭐ | 📝 |
| 18 | 오픈소스 라이선스 선택 | ⭐⭐ | 📝 |
| 19 | 웹에서 파일 관리하기 | ⭐ | 📝 |
| 20 | Repository Settings 최적화 | ⭐⭐ | 📝 |
Phase 3: Git 로컬 작업 (Day 21-30) 🥈
목표: Git 명령어 숙달
Week 5: Git 설치와 설정 (Day 21-25)
| Day | 제목 | 난이도 | 상태 |
| 21 | Git 설치 (Windows) | ⭐⭐ | 📝 |
| 22 | Git 설치 (Mac/Linux) | ⭐⭐ | 📝 |
| 23 | Git 초기 설정 | ⭐⭐ | 📝 |
| 24 | 로컬 저장소 초기화 | ⭐⭐ | 📝 |
| 25 | Repository Clone하기 | ⭐⭐ | 📝 |
Week 6: Git 핵심 개념 (Day 26-30)
| Day | 제목 | 난이도 | 상태 |
| 26 | Git 3영역 이해 | ⭐⭐⭐ | 📝 |
| 27 | 파일 상태 4가지 | ⭐⭐⭐ | 📝 |
| 28 | git add로 스테이징 | ⭐⭐ | 📝 |
| 29 | git commit으로 저장 | ⭐⭐ | 📝 |
| 30 | 커밋 메시지 작성법 | ⭐⭐ | 📝 |
Phase 4: Remote 연동 (Day 31-40) 🥈
목표: 로컬-원격 동기화
Week 7: Push와 Pull (Day 31-35)
| Day | 제목 | 난이도 | 상태 |
| 31 | Remote Repository 이해 | ⭐⭐⭐ | 📝 |
| 32 | git push로 업로드 | ⭐⭐ | 📝 |
| 33 | git pull로 다운로드 | ⭐⭐ | 📝 |
| 34 | git fetch 활용 | ⭐⭐⭐ | 📝 |
| 35 | Push/Pull 트러블슈팅 | ⭐⭐⭐ | 📝 |
Week 8: 상태 확인 (Day 36-40)
| Day | 제목 | 난이도 | 상태 |
| 36 | git status 완벽 가이드 | ⭐⭐ | 📝 |
| 37 | git log 히스토리 보기 | ⭐⭐⭐ | 📝 |
| 38 | git diff 변경사항 확인 | ⭐⭐⭐ | 📝 |
| 39 | git show 커밋 상세보기 | ⭐⭐ | 📝 |
| 40 | Git Alias 단축키 설정 | ⭐⭐ | 📝 |
Phase 5: 브랜치 전략 (Day 41-50) 🥇
목표: 브랜치 마스터
Week 9: 브랜치 기초 (Day 41-45)
| Day | 제목 | 난이도 | 상태 |
| 41 | 브랜치 개념과 필요성 | ⭐⭐⭐ | 📝 |
| 42 | 브랜치 생성하기 | ⭐⭐ | 📝 |
| 43 | 브랜치 이동하기 | ⭐⭐ | 📝 |
| 44 | 각 브랜치에서 작업 | ⭐⭐⭐ | 📝 |
| 45 | 브랜치 삭제하기 | ⭐⭐ | 📝 |
Week 10: Merge와 Rebase (Day 46-50)
| Day | 제목 | 난이도 | 상태 |
| 46 | Fast-Forward Merge | ⭐⭐⭐ | 📝 |
| 47 | 3-Way Merge | ⭐⭐⭐⭐ | 📝 |
| 48 | Merge Conflict 해결 | ⭐⭐⭐⭐ | 📝 |
| 49 | Rebase 이해하기 | ⭐⭐⭐⭐ | 📝 |
| 50 | 브랜치 전략 (Git Flow) | ⭐⭐⭐⭐ | 📝 |
Phase 6: 오픈소스 협업 (Day 51-60) 🥇
목표: 첫 오픈소스 기여
Week 11: Fork와 Clone (Day 51-55)
| Day | 제목 | 난이도 | 상태 |
| 51 | Fork 개념 이해 | ⭐⭐⭐ | 📝 |
| 52 | Upstream과 Origin | ⭐⭐⭐ | 📝 |
| 53 | Upstream 동기화 | ⭐⭐⭐⭐ | 📝 |
| 54 | Fork 저장소 작업 | ⭐⭐⭐ | 📝 |
| 55 | 기여할 프로젝트 찾기 | ⭐⭐ | 📝 |
Week 12: Pull Request (Day 56-60)
| Day | 제목 | 난이도 | 상태 |
| 56 | Pull Request 개념 | ⭐⭐⭐ | 📝 |
| 57 | PR 생성하기 | ⭐⭐⭐ | 📝 |
| 58 | 좋은 PR 설명 작성 | ⭐⭐⭐ | 📝 |
| 59 | 코드 리뷰 받고 수정 | ⭐⭐⭐⭐ | 📝 |
| 60 | PR Merge와 완료 | ⭐⭐⭐ | 📝 |
Phase 7: Git 고급 명령어 (Day 61-70) 💎
목표: 실수 복구와 고급 기능
Week 13: 되돌리기 (Day 61-65)
| Day | 제목 | 난이도 | 상태 |
| 61 | git reset 개념 | ⭐⭐⭐⭐ | 📝 |
| 62 | git reset 실습 | ⭐⭐⭐⭐ | 📝 |
| 63 | git revert 안전하게 | ⭐⭐⭐ | 📝 |
| 64 | git restore 파일 복구 | ⭐⭐⭐ | 📝 |
| 65 | git clean 정리하기 | ⭐⭐ | 📝 |
Week 14: 고급 기능 (Day 66-70)
| Day | 제목 | 난이도 | 상태 |
| 66 | git stash 임시 저장 | ⭐⭐⭐ | 📝 |
| 67 | Stash 고급 활용 | ⭐⭐⭐⭐ | 📝 |
| 68 | git cherry-pick | ⭐⭐⭐⭐ | 📝 |
| 69 | git reflog 복구 | ⭐⭐⭐⭐ | 📝 |
| 70 | git bisect 버그 찾기 | ⭐⭐⭐⭐ | 📝 |
Phase 8: GitHub 협업 도구 (Day 71-80) 💎
목표: 프로젝트 관리
Week 15: Issues와 Projects (Day 71-75)
| Day | 제목 | 난이도 | 상태 |
| 71 | GitHub Issues 기초 | ⭐⭐ | 📝 |
| 72 | Issues 관리하기 | ⭐⭐⭐ | 📝 |
| 73 | Issue 고급 기능 | ⭐⭐⭐ | 📝 |
| 74 | GitHub Projects 기초 | ⭐⭐⭐ | 📝 |
| 75 | Projects 작업 관리 | ⭐⭐⭐⭐ | 📝 |
Week 16: Wiki와 협업 (Day 76-80)
| Day | 제목 | 난이도 | 상태 |
| 76 | GitHub Wiki 만들기 | ⭐⭐ | 📝 |
| 77 | Wiki 고급 활용 | ⭐⭐⭐ | 📝 |
| 78 | GitHub Discussions | ⭐⭐ | 📝 |
| 79 | 팀 협업 설정 | ⭐⭐⭐ | 📝 |
| 80 | Code Review 문화 | ⭐⭐⭐⭐ | 📝 |
Phase 9: 자동화와 CI/CD (Day 81-90) 💎
목표: GitHub Actions 마스터
Week 17: Actions 기초 (Day 81-85)
| Day | 제목 | 난이도 | 상태 |
| 81 | CI/CD 개념 이해 | ⭐⭐⭐ | 📝 |
| 82 | GitHub Actions 소개 | ⭐⭐⭐ | 📝 |
| 83 | 첫 Workflow 만들기 | ⭐⭐⭐⭐ | 📝 |
| 84 | 테스트 자동화 | ⭐⭐⭐⭐ | 📝 |
| 85 | 빌드 자동화 | ⭐⭐⭐⭐ | 📝 |
Week 18: 배포 자동화 (Day 86-90)
| Day | 제목 | 난이도 | 상태 |
| 86 | GitHub Pages 배포 | ⭐⭐⭐ | 📝 |
| 87 | 배포 Workflow | ⭐⭐⭐⭐ | 📝 |
| 88 | Actions Marketplace | ⭐⭐⭐ | 📝 |
| 89 | Workflow 최적화 | ⭐⭐⭐⭐⭐ | 📝 |
| 90 | 완전한 CI/CD 파이프라인 | ⭐⭐⭐⭐⭐ | 📝 |
Phase 10: 실전 프로젝트 (Day 91-100) 🏆
목표: 포트폴리오 완성
Week 19: 종합 프로젝트 (Day 91-95)
| Day | 제목 | 난이도 | 상태 |
| 91 | 프로젝트 기획하기 | ⭐⭐⭐ | 📝 |
| 92 | Repository 완벽 설정 | ⭐⭐⭐⭐ | 📝 |
| 93 | 브랜치 전략 적용 | ⭐⭐⭐⭐ | 📝 |
| 94 | CI/CD 파이프라인 구축 | ⭐⭐⭐⭐⭐ | 📝 |
| 95 | 협업 시뮬레이션 | ⭐⭐⭐⭐ | 📝 |
Week 20: 포트폴리오 완성 (Day 96-100)
| Day | 제목 | 난이도 | 상태 |
| 96 | 프로필 최적화 | ⭐⭐⭐ | 📝 |
| 97 | 문서화 완성 | ⭐⭐⭐ | 📝 |
| 98 | 포트폴리오 점검 | ⭐⭐⭐⭐ | 📝 |
| 99 | 실제 오픈소스 기여 | ⭐⭐⭐⭐⭐ | 📝 |
| 100 | 100일 회고와 수료 | ⭐⭐⭐ | 📝 |
💪 참여 방법
1. 매일 학습
- 📖 해당 Day 포스트 읽기 (5분)
- 💻 실습 따라하기 (10분)
- ✅ 체크리스트 완료
2. 진행 상황 추적
자신만의 방법으로 학습 진도를 기록하세요:
- 📝 학습 노트 작성
- ✅ 완료한 Day 체크리스트 관리
- 💻 실습 결과물 GitHub에 업로드
💡 학습 팁
- 매일 같은 시간: 꾸준한 루틴 만들기
- 건너뛰지 않기: 작은 진전이라도 매일 실천
- 실습 필수: 읽기만 하지 말고 직접 따라하기
- 본인 속도로: 이해가 우선, 빠르게 끝내기보다 제대로 이해하기
- 복습 중요: 막히면 이전 Day로 돌아가서 복습
🚀 지금 시작하기
준비되셨나요? 첫 걸음을 시작해보세요!
👉 Day 1: GitHub이란?
지금 바로 시작하세요! 🚀