GitGit/GitHub 기초강의 6개 중 1번째난이도 입문

Git이란? — 버전 관리가 필요한 이유

발행 읽는 시간 약 1 분

  • Git
  • 버전관리
  • VCS
  • 개발환경

강의 소개

버전 관리 시스템의 개념을 이해하고, Git이 왜 개발자의 필수 도구인지 알아봅니다. 로컬 저장소, 스냅샷, 커밋의 의미를 익힙니다.

버전 관리란 무엇인가?#

코드를 작성하다 보면 이런 상황이 생깁니다.

Text
프로젝트_최종.zip
프로젝트_최종2.zip
프로젝트_최종_진짜최종.zip
프로젝트_최종_진짜최종_수정.zip

파일을 이렇게 복사하는 것도 일종의 버전 관리지만, Git은 이를 훨씬 체계적으로 처리합니다.


Git의 핵심 개념#

Diagram · Mermaid

Git은 파일의 변경 이력을 스냅샷 형태로 저장합니다. 언제든지 과거 시점으로 돌아갈 수 있습니다.


Git 설치 및 초기 설정#

Bash
# 설치 확인
git --version
# git version 2.40.0

# 사용자 정보 설정 (최초 1회)
git config --global user.name "홍길동"
git config --global user.email "hong@example.com"

# 설정 확인
git config --list

저장소 초기화#

Bash
# 새 프로젝트 시작
mkdir my-project
cd my-project
git init
# Initialized empty Git repository in .../my-project/.git/

# 또는 기존 폴더를 Git 저장소로
cd existing-folder
git init

git init을 실행하면 .git 폴더가 생성됩니다. 이 폴더에 모든 버전 정보가 담깁니다.


첫 커밋 만들기#

Bash
# 파일 생성
echo "# 나의 첫 프로젝트" > README.md

# 상태 확인
git status
# Untracked files: README.md

# 스테이징 영역에 추가
git add README.md

# 커밋 (스냅샷 저장)
git commit -m "첫 번째 커밋: README 추가"

# 이력 확인
git log
# commit a1b2c3d (HEAD -> main)
# Author: 홍길동 <hong@example.com>
# Date:   Mon Apr 21 14:00:00 2026
#
#     첫 번째 커밋: README 추가

Git이 저장하는 것#

Diagram · Mermaid

각 커밋은 고유한 해시(ID)를 가집니다. 과거 커밋으로 돌아가거나 비교할 때 이 ID를 사용합니다.


.gitignore: 추적하지 않을 파일#

모든 파일을 Git으로 관리할 필요는 없습니다.

Bash
# .gitignore 파일 생성
cat > .gitignore << EOF
# 환경변수 (API 키, 비밀번호)
.env
.env.local

# 의존성 폴더
node_modules/
__pycache__/
*.pyc

# 빌드 결과물
dist/
build/
.next/

# OS 파일
.DS_Store
Thumbs.db

# IDE 설정
.vscode/
.idea/
EOF

정리#

개념설명
저장소 (Repository)프로젝트의 모든 파일과 이력을 담는 공간
커밋 (Commit)특정 시점의 스냅샷 + 메시지
스테이징 영역커밋할 파일을 준비하는 중간 단계
HEAD현재 작업 중인 위치
.gitignoreGit이 무시할 파일/폴더 목록

다음 편에서는 기본 명령어 — add, commit, log, diff, status를 자유롭게 사용하는 방법을 배웁니다.

Follow · Ask · Work

이 글이 도움이 됐다면

짧은 작업 기록과 데모는 인스타그램에 올립니다. 만들고 싶은 것이 있다면 프로젝트 의뢰나 협업 제안도 편하게 보내 주세요.

글쓴이

파란여우

직접 만든 AI 앱·제품의 개발·배포를 공개하는 실전형 테크 크리에이터

파란여우 소개 Instagram @bluefox._.hi

이어서 보기

만들고 싶은 것이 있다면 프로젝트 의뢰로 알려 주세요.