💻 IT/테크

GitHub 완벽 입문 가이드 (협업 개발 5분 이해)

📅 2026년 3월 2일 ⏱️ 8분 읽기 ✍️ kimyido

GitHub 완벽 초보자 가이드

프로그래머라면 GitHub 없이 살 수 없습니다. 지금 바로 배워보세요.

GitHub란?

간단히: 코드 저장소 + 협업 플랫폼

비유: 구글 드라이브 + 슬랙 + 노션

GitHub vs Git

Git:

  • 버전 관리 시스템 (소프트웨어)
  • 로컬 컴퓨터에서 사용
  • 명령어 기반
GitHub:
  • 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 changes

GitHub 핵심 개념 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-feature

GitHub 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
→ Push

GitHub 통계 및 포트폴리오

GitHub Contributions Graph:

  • 초록색 박스 = 코드 작성 (활동)
  • 많을수록 좋은 이미지
  • 취업면접에서 평가 대상
포트폴리오 구성:
  • README.md 작성 (프로젝트 설명)
  • 예제 코드 추가
  • 문서화 (Documentation)
  • 라이센스 추가
  • GitHub 프로필 꾸미기

    README 생성:

    # 안녕하세요! 👋
    
    저는 Python 개발자입니다.
    
    ## 기술 스택
    - Python, JavaScript, React
    - Django, FastAPI
    - PostgreSQL, Redis
    
    ## 프로젝트
    - [프로젝트1](링크) - 설명
    - [프로젝트2](링크) - 설명
    
    ## 연락처
    - Email: your@email.com
    - Blog: yoursite.com

    GitHub 보안

    필수 설정:

  • 2FA 활성화
  • Settings → Security → 2FA 활성화

  • SSH Key 설정
  • - 비밀번호 대신 SSH 키 사용 - 더 안전함

  • Personal Access Token
  • - 비밀번호 대신 토큰 사용 - 세밀한 권한 제어

    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 작성
    2주차:
    • 간단한 Python 프로젝트 업로드
    • Commit 메시지 연습
    3주차:
    • Branch 생성 & 병합 연습
    • Pull Request 생성
    4주차:
    • 오픈소스 프로젝트 기여
    • 다른 사람 코드 리뷰

    추천: GitHub 학습 순서

  • 기초: Git 명령어 10개
  • 중급: Branch & Pull Request
  • 고급: 오픈소스 기여
  • 마스터: CI/CD 자동화
  • GitHub는 프로그래머의 필수 스킬입니다. 지금 시작하세요!

    핵심 체크리스트

    • [ ] 이 글의 핵심 내용을 이해했는가?
    • [ ] 나의 상황에 적용할 수 있는 부분은?
    • [ ] 추가로 확인할 사항은?

    ---

    관련 콘텐츠: IT 기술

    ✍️
    김이도 편집팀
    정확한 정보 전달을 위해 전문 자료와 공식 통계를 기반으로 콘텐츠를 작성합니다. 최신 정보 반영을 위해 주기적으로 업데이트됩니다.
    📅 최종 업데이트: 2026년 3월 2일 · 📧 문의: 연락하기
    💻 IT/테크 카테고리 전체 글 보기 →