codingstairs
노트에듀라이프연락
⌕검색⌘K
koen

Navigation

  • Intro
  • Blog
  • Life

연락하기

로그인 없이도 보낼 수 있어요. 답변이 필요하면 이메일을 함께 적어 주세요.

  • 익명 폼으로 의견 남기기 →
  • ✉ warragon112@gmail.com
  • 카카오톡 오픈채팅 ↗

© 2026 codingstairs

  • 노트
  • 에듀
  • 검색
  • 라이프
  • 연락
  • 약관
  • RSS
  • GitHub
에듀›처음 시작하는 개발 환경›2단계

2단계

2단계 — Git 첫 커밋

0회 조회

2단계 — Git 첫 커밋

"한 달 전 버전으로 되돌리기" · "친구와 같이 편집" · "내 코드 안전 보관" 세 가지를 동시에 해결하는 도구가 Git 입니다.

1. Git 은 무엇을 저장하나?

폴더의 스냅샷 (그 시점 파일 상태 전체) 를 저장. 커밋 하나 = 스냅샷 하나.

t0: README.md "안녕"
t1: README.md "안녕 세상"          ← 커밋 1
t2: README.md "안녕 세상!"         ← 커밋 2

각 커밋은 이전 커밋의 해시를 참조해 체인을 이룹니다.

2. 설치

# Windows
winget install Git.Git

# macOS
brew install git

# Linux
sudo apt install git

버전 확인:

git --version    # 2.40+

3. 첫 설정 (1회)

git config --global user.name "홍길동"
git config --global user.email "hong@example.com"
git config --global init.defaultBranch main
git config --global core.autocrlf input       # (Windows) 줄바꿈 자동 처리

커밋 기록에 이름 · 이메일이 붙으므로 실명 · 실제 이메일 권장.

4. 첫 저장소

mkdir my-first-repo
cd my-first-repo
git init

.git/ 숨김 폴더가 생겨 버전 이력을 보관.

5. 3 단계 영역

작업 트리 (Working Tree) → 스테이지 (Stage) → 저장소 (Repository)
       파일 수정 중               add 한 변경            commit 완료
  • 수정 — 아직 Git 관점에서는 "변경 감지만"
  • add — "이 변경을 다음 커밋에 포함"
  • commit — 스냅샷 완성
echo "# 내 프로젝트" > README.md
git status                        # 변경 감지
git add README.md                 # 스테이지로
git status                        # 스테이지 확인
git commit -m "docs: 첫 README"
git log                           # 이력 확인

6. 기본 10 개 명령

git status                   # 현재 상태
git diff                     # 수정 중 내용 비교
git diff --staged            # 스테이지 내용 비교
git add .                    # 모든 변경 스테이지 (신중히)
git commit -m "메시지"
git log --oneline            # 간단 이력
git log --graph --oneline    # 브랜치 그래프
git branch                   # 브랜치 목록
git checkout -b feature-x    # 새 브랜치로 이동
git merge feature-x          # 현재 브랜치에 병합

7. 브랜치 — 평행 세계

한 파일에 여러 사람이 동시에 작업하려면 브랜치 필수.

git checkout -b fix-login
# ... 코드 수정 ...
git add .
git commit -m "fix: 로그인 버그"

git checkout main
git merge fix-login

브랜치는 "main 의 특정 시점에서 가지치기한 또 다른 스냅샷 줄기".

8. GitHub 연결

GitHub 에 새 저장소 (빈 상태) 생성 후:

git remote add origin https://github.com/사용자/저장소.git
git push -u origin main

이후부터는 git push 만.

9. 협업 기본 사이클

git pull                 # 원격 최신 내려받기
git checkout -b fix-x    # 내 브랜치
# ... 작업 ...
git add . && git commit -m "fix: X"
git push -u origin fix-x
# GitHub UI 에서 Pull Request 생성

Pull Request 에 대해 코드리뷰 → 승인 → Merge.

10. 커밋 메시지 규칙

한 줄 제목 + (선택) 빈 줄 + 본문.

feat: 회원가입 페이지 추가

- 이메일 · 비밀번호 입력
- 서버에 POST /api/signup
- 로딩 · 에러 상태 처리

태그 예:

  • feat 새 기능
  • fix 버그 수정
  • docs 문서
  • refactor 리팩터
  • test 테스트
  • chore 설정 · 의존성

11. 되돌리기 · 복구

# 최근 커밋 메시지 수정
git commit --amend -m "새 메시지"

# 실수로 add 한 파일 취소
git restore --staged 파일

# 수정 내용 버리기 (주의)
git restore 파일

# 최근 커밋 취소 (변경은 유지)
git reset HEAD~1

reset --hard 는 변경도 삭제. 초보자는 피하세요.

12. .gitignore — 안 올릴 파일 목록

# .gitignore
node_modules/
.next/
.env
.env.local
*.log
dist/
build/
.DS_Store

.env 처럼 비밀이 들어간 파일, 생성되는 폴더 (node_modules/) 는 절대 올리지 마세요.

13. 자주 걸리는 자리

  • 실수로 .env 커밋 — 히스토리에서 제거 어려움. 시크릿 즉시 교체 권장
  • git push 시 패스워드 안 됨 — GitHub 은 PAT (Personal Access Token) 사용 · SSH 키 권장
  • merge conflict — 한 파일을 여러 브랜치가 수정. 수동 해결 후 git add + commit
  • 이상한 상태 — git reflog 로 모든 HEAD 이동 확인 → 복구 가능

하고픈 말

Git 은 기본 10 개 명령만 익히면 실무 80% 를 감당합니다. 나머지는 필요할 때 찾아 배워도 늦지 않습니다. 처음에는 git status 를 습관화하세요.

Next

  • 03-vscode

Pro Git Book (무료) · GitHub Skills · Oh Shit, Git!?! 를 참고합니다.

← 1단계

1단계 — 터미널과 친해지기

3단계 →

3단계 — VS Code 와 확장팩