GitHub 완벽 입문 가이드 (협업 개발 5분 이해)
GitHub 완벽 초보자 가이드
프로그래머라면 GitHub 없이 살 수 없습니다. 지금 바로 배워보세요.
GitHub란?
간단히: 코드 저장소 + 협업 플랫폼
비유: 구글 드라이브 + 슬랙 + 노션
GitHub vs Git
Git:
- 버전 관리 시스템 (소프트웨어)
- 로컬 컴퓨터에서 사용
- 명령어 기반
- Git을 사용하는 클라우드 플랫폼
- 온라인 저장소
- GUI 제공
GitHub 시작하기
#### 1단계: 가입 (5분)
github.com → Sign up
→ 이메일 입력
→ 비밀번호 설정
→ 계정명 설정 (영문)
→ 가입 완료#### 2단계: Repository 생성
New repository
→ 이름: my-first-project
→ Public (공개) 선택
→ Initialize with README (체크)
→ Create repository#### 3단계: 코드 작성
Add file → Create new file
→ hello.py 입력
→ print("Hello GitHub!")
→ Commit changesGitHub 핵심 개념 4가지
#### 1. Repository (저장소)
정의: 프로젝트 파일들을 저장하는 폴더
my-project/
├── main.py
├── config.txt
├── README.md
└── .gitignore#### 2. Commit (기록)
정의: 변경사항 저장 (스냅샷)
Commit 1: "초기 설정"
Commit 2: "로그인 기능 추가"
Commit 3: "버그 수정"#### 3. Branch (분기)
정의: 독립된 작업 흐름
main (메인 브랜치)
├── feature/login (로그인 기능)
├── feature/api (API 개발)
└── bugfix/error (버그 수정)#### 4. Pull Request (협업)
정의: 다른 사람의 코드 변경을 제안하고 검토
Step 1: 코드 변경
Step 2: Pull Request 생성
Step 3: 검토 (리뷰)
Step 4: 승인 후 병합 (Merge)실제 GitHub 사용 흐름
#### 시나리오: 블로그 만들기
1. Repository 생성: my-blog
2. 초기 코드 작성 (index.html, style.css)
3. Commit: "블로그 초기 설정"
4. 기능 개발
- Branch: feature/navbar 생성
- 네비게이션 바 코드 작성
- Commit: "네비게이션 바 추가"
5. Pull Request 생성
6. 검토 후 main에 병합
7. 배포GitHub 명령어 (CLI)
#### 설치
# Git 설치
# Windows: git-scm.com
# Mac: brew install git
# 설정
git config --global user.name "Your Name"
git config --global user.email "email@example.com"#### 자주 쓰는 명령어
# 저장소 복제
git clone https://github.com/user/repo.git
# 현재 상태 확인
git status
# 변경사항 기록 준비
git add .
# 변경사항 저장 (스냅샷)
git commit -m "기능 추가"
# 원격 저장소에 업로드
git push
# 원격 저장소에서 다운로드
git pull
# 새 브랜치 생성
git branch feature/new-feature
# 브랜치 이동
git checkout feature/new-feature
# 병합
git merge feature/new-featureGitHub Pages - 무료 웹사이트
특징:
- 완전 무료
- 정적 사이트 호스팅
- {username}.github.io 도메인
1. Repository: username.github.io 생성
2. index.html 작성
3. Push
4. https://username.github.io 접속GitHub 활용 팁
#### 좋은 Commit 메시지 쓰기
나쁜 예:
git commit -m "수정"
git commit -m "잡동사니"좋은 예:
git commit -m "로그인 기능 추가"
git commit -m "버그 수정: API 타임아웃 문제 해결"
git commit -m "성능 개선: 데이터베이스 쿼리 최적화"#### .gitignore 사용
# node_modules 제외 (불필요한 폴더)
node_modules/
# 환경 변수 파일 제외 (보안)
.env
.env.local
# IDE 설정 제외
.vscode/
.idea/GitHub를 통한 협업
#### Pull Request 워크플로우
Step 1: Fork (개발자 복사본)
Step 2: Branch 생성
Step 3: 코드 수정
Step 4: Commit & Push
Step 5: Pull Request 생성
Step 6: Maintainer 검토
Step 7: 승인 후 병합#### Conflict (충돌) 해결
2명이 같은 파일 수정 시 발생
Git이 자동 병합 실패
→ 수동으로 수정
→ 다시 Commit
→ PushGitHub 통계 및 포트폴리오
GitHub Contributions Graph:
- 초록색 박스 = 코드 작성 (활동)
- 많을수록 좋은 이미지
- 취업면접에서 평가 대상
GitHub 프로필 꾸미기
README 생성:
# 안녕하세요! 👋
저는 Python 개발자입니다.
## 기술 스택
- Python, JavaScript, React
- Django, FastAPI
- PostgreSQL, Redis
## 프로젝트
- [프로젝트1](링크) - 설명
- [프로젝트2](링크) - 설명
## 연락처
- Email: your@email.com
- Blog: yoursite.comGitHub 보안
필수 설정:
Settings → Security → 2FA 활성화GitHub에서 배우기
오픈소스 프로젝트:
- 다른 사람의 코드 학습
- Pull Request로 기여
- 개발자 네트워크 구축
- Awesome Lists (학습 자료)
- First-Timers-Only (입문자용)
- Good First Issue (쉬운 이슈)
2026년 GitHub 트렌드
AI 통합:
- GitHub Copilot (AI 코드 완성)
- 자동 코드 리뷰
- 의존성 취약점 자동 감지
- 시크릿 스캔
실습: 첫 GitHub 프로젝트
1주차:
- GitHub 가입
- Hello World Repository 생성
- README.md 작성
- 간단한 Python 프로젝트 업로드
- Commit 메시지 연습
- Branch 생성 & 병합 연습
- Pull Request 생성
- 오픈소스 프로젝트 기여
- 다른 사람 코드 리뷰
추천: GitHub 학습 순서
GitHub는 프로그래머의 필수 스킬입니다. 지금 시작하세요!
핵심 체크리스트
- [ ] 이 글의 핵심 내용을 이해했는가?
- [ ] 나의 상황에 적용할 수 있는 부분은?
- [ ] 추가로 확인할 사항은?
---
관련 콘텐츠: IT 기술