📌 GitHub란?
GitHub는 소스 코드 관리와 협업을 위한 플랫폼으로, 개발자들이 코드 저장, 공유 및 협업을 할 수 있는 Git 저장소 호스팅 서비스입니다.
GitHub는 Git을 기반으로 동작하며, 개인 프로젝트부터 대규모 오픈 소스 프로젝트까지 다양한 용도로 사용됩니다.
🔹 1. GitHub의 주요 기능
기능 | 설명 |
---|---|
저장소 (Repository) | 프로젝트를 저장하는 공간 (코드, 문서, 파일 관리 가능) |
브랜치 (Branch) | 독립된 개발 환경을 만들어 새로운 기능을 테스트 |
커밋 (Commit) | 변경 사항을 기록하는 저장 단위 |
푸시 (Push) & 풀 (Pull) | 원격 저장소와 로컬 저장소 간의 동기화 |
풀 리퀘스트 (Pull Request, PR) | 코드 변경을 검토하고 병합 요청을 하는 기능 |
이슈 (Issues) | 버그 및 작업 관리를 위한 기능 |
액션 (GitHub Actions) | CI/CD 자동화 기능 |
위키 (Wiki) | 프로젝트 문서 관리 |
페이지 (GitHub Pages) | 정적 웹사이트를 호스팅하는 기능 |
🔹 2. GitHub 기본 사용법
✅ 1) GitHub 회원가입 & 저장소 생성
1. GitHub 에 접속하여 회원가입
2. “New repository” 클릭 → 프로젝트 이름 입력 후 생성
✅ 2) GitHub에서 코드 업로드
Git이 설치되어 있어야 로컬에서 GitHub로 코드를 업로드할 수 있습니다.
# Git 초기화
git init
# 원격 저장소 연결
git remote add origin https://github.com/사용자이름/저장소이름.git
# 파일 추가
git add .
# 변경 사항 커밋
git commit -m "첫 커밋"
# GitHub에 푸시 (업로드)
git push -u origin main
✅ 3) 기존 저장소 복사 (Clone)
GitHub에 있는 프로젝트를 내 컴퓨터로 다운로드하려면:
git clone https://github.com/사용자이름/저장소이름.git
✅ 4) 브랜치 생성 및 병합
새로운 기능을 개발할 때는 브랜치(branch) 를 생성해서 작업합니다.
# 새 브랜치 생성
git branch 새브랜치이름
# 브랜치 변경
git checkout 새브랜치이름
# 변경 후 main 브랜치로 병합
git checkout main
git merge 새브랜치이름
🔹 3. GitHub 협업 (Pull Request & Issues)
✅ 1) Pull Request(PR)
• PR은 새로운 기능을 메인 저장소에 반영하기 위한 요청입니다.
• 코드를 리뷰받고 승인되면 main 브랜치에 병합 (merge) 됩니다.
✅ 2) Issues
• 프로젝트의 버그, 개선 요청 등을 기록하는 기능
• 팀원 간의 작업 관리 및 협업 가능
🔹 4. GitHub 추가 기능
기능 | 설명 |
---|---|
GitHub Pages | 정적 웹사이트 배포 |
GitHub Actions | CI/CD 자동화 (테스트, 배포) |
Code Review | PR에서 코드 리뷰 가능 |
Gist | 코드 스니펫 공유 가능 |
🔹 5. GitHub 요금제
GitHub는 기본적으로 무료로 사용 가능하지만, 추가 기능이 필요한 경우 유료 플랜이 있습니다.
플랜 | 가격 | 주요 기능 |
---|---|---|
Free | $0 | 무제한 공개 & 개인 저장소, 기본 CI/CD |
Pro | $4/월 | 고급 협업 도구, 더 많은 CI/CD 시간 |
Team | $8/월 | 팀 단위 협업 도구 제공 |
Enterprise | 맞춤 가격 | 기업 맞춤 기능 제공 |
🔹 6. GitHub vs GitLab vs Bitbucket
플랫폼 | 특징 |
---|---|
GitHub | 가장 인기 있는 Git 플랫폼, 오픈 소스에 강함 |
GitLab | 자체 서버 호스팅 가능, CI/CD 기능 강력 |
Bitbucket | Jira 연동 강력, 소규모 팀에 적합 |
✅ 추천:
• 오픈 소스 & 개인 프로젝트 → GitHub
• 기업 내부 프로젝트 → GitLab
• Jira 연동이 필요한 경우 → Bitbucket
🔹 7. GitHub 사용시 유용한 명령어 정리
명령어 | 설명 |
---|---|
git init | Git 저장소 초기화 |
git clone URL | 원격 저장소 복제 |
git add . | 변경된 파일 추가 |
git commit -m “메시지” | 변경 사항 저장 |
git push origin 브랜치명 | GitHub로 업로드 |
git pull origin 브랜치명 | 원격 저장소 변경 사항 가져오기 |
git branch 새브랜치명 | 새 브랜치 생성 |
git checkout 새브랜치명 | 브랜치 변경 |
git merge 브랜치명 | 브랜치 병합 |
🔹 결론 (GitHub 활용 요약)
목적 | 활용 방법 |
---|---|
코드 저장 및 버전 관리 | GitHub 저장소 사용 |
협업 | PR(Pull Request), Issue, Code Review |
자동화 | GitHub Actions 활용 (CI/CD) |
프로젝트 문서화 | README.md, Wiki 사용 |
웹사이트 배포 | GitHub Pages 활용 |
GitHub는 단순한 코드 저장소가 아니라, 강력한 협업 & 자동화 도구입니다! 🚀