Git과 버전 관리 (Version Control)
파일의 변경 이력을 기록하고 관리하는 시스템입니다. AI가 코드를 대량으로 수정해도, 이전 상태로 되돌리거나 변경 내역을 추적할 수 있게 해줍니다.
🤔 혹시 이런 경험 있나요?
AI에게 "디자인 좀 바꿔줘"라고 했더니, 파일 10개를 한꺼번에 수정했습니다. 결과를 보니 이전 버전이 더 나았는데... 뭘 어떻게 바꿨는지도 모르겠고, 되돌릴 수도 없습니다.
또는 이런 경우도 있습니다. 잘 되던 코드가 갑자기 에러가 나는데, 대체 언제부터 안 됐는지, 뭘 바꿨길래 망가졌는지 알 수가 없습니다.
이런 상황을 방지하는 것이 바로 Git입니다. 바이브코딩에서 Git은 선택이 아니라 생존 도구입니다.
🔑 Git, 한마디로 뭘까요?
Git은 파일의 변경 이력을 기록하고 관리하는 버전 관리 시스템입니다.
문서 작업할 때 "보고서_최종.docx", "보고서_최종_수정.docx", "보고서_진짜최종.docx"처럼 파일을 여러 개 만들어본 적 있을 겁니다. Git은 이걸 하나의 파일로 관리하면서, 모든 변경 기록을 자동으로 저장해줍니다.
💾 게임의 세이브 포인트와 같습니다
RPG 게임을 하는 상황을 떠올려보세요.
- 세이브 없이 플레이: 보스전에서 지면 처음부터 다시 시작해야 합니다.
- 중간중간 세이브: 보스전에서 져도 세이브 포인트부터 다시 시작하면 됩니다.
Git에서 커밋(commit)은 이 세이브 포인트와 같습니다. "여기까지는 잘 되니까 저장해두자"라고 기록하는 것입니다. AI가 코드를 크게 바꾸기 전에 커밋해두면, 문제가 생겼을 때 언제든 이전 상태로 되돌릴 수 있습니다.
⚙️ 핵심 개념 4가지
1. 커밋 (Commit) - 세이브 포인트 만들기
현재 파일 상태를 기록하는 것입니다.
git add . # 변경된 파일들을 준비
git commit -m "로그인 기능 추가" # 세이브 포인트 생성 + 메모2. 푸시 (Push) - 클라우드에 백업하기
내 컴퓨터의 기록을 GitHub(온라인 저장소)에 올리는 것입니다.
git push # GitHub에 업로드3. 풀 (Pull) - 클라우드에서 가져오기
다른 곳에서 변경된 내용을 내 컴퓨터로 가져오는 것입니다.
git pull # GitHub에서 다운로드4. 브랜치 (Branch) - 평행 세계 만들기
현재 코드를 복사해서 별도로 작업하는 것입니다. 실험이 실패하면 버리고, 성공하면 합칠 수 있습니다.
git checkout -b new-feature # 새 브랜치 생성
git merge new-feature # 메인에 합치기🌐 GitHub은 뭔가요?
Git은 내 컴퓨터에서 돌아가는 버전 관리 도구이고, GitHub은 그 기록을 온라인에 저장하고 공유하는 서비스입니다.
- Git: 세이브 파일을 만드는 기능 (로컬)
- GitHub: 세이브 파일을 클라우드에 백업하는 서비스 (온라인)
GitHub에 코드를 올려두면 컴퓨터가 고장나도 코드를 잃지 않고, Vercel 같은 배포 서비스와 연결하면 GitHub에 올리기만 해도 자동으로 웹사이트가 업데이트됩니다.
💡 바이브코딩에서 Git이 특히 중요한 이유
1. AI는 대량의 파일을 한 번에 수정합니다
- 사람이 직접 코딩하면 한 번에 1
2개 파일을 수정하지만, AI는 1020개 파일을 동시에 바꾸기도 합니다. - 커밋 없이 이런 변경을 허용하면, 문제가 생겼을 때 어떤 파일이 원인인지 찾기 어렵습니다.
2. AI의 수정이 항상 올바르지는 않습니다
- AI가 수정한 코드가 다른 기능을 망가뜨릴 수 있습니다.
- 커밋해두면
git diff로 "AI가 정확히 뭘 바꿨는지" 확인할 수 있고,git checkout으로 되돌릴 수 있습니다.
3. 실험을 안전하게 할 수 있습니다
- "이 디자인으로 바꿔볼까?"를 브랜치로 시도하면, 마음에 안 들면 브랜치를 삭제하면 끝입니다.
- 메인 코드는 전혀 영향받지 않습니다.
🛠️ 바이브코딩 실전 워크플로우
1. AI에게 새 기능 요청 전에
→ git commit -m "기능 추가 전 현재 상태 저장"
2. AI가 코드를 수정한 후
→ git diff 로 변경 내용 확인
→ 잘 작동하면 git commit -m "로그인 기능 추가"
→ 문제가 있으면 git checkout . 로 되돌리기
3. 안정적인 버전이 완성되면
→ git push 로 GitHub에 백업📋 30초 요약
-
Git은 파일의 변경 이력을 기록하는 버전 관리 시스템입니다. 게임의 세이브 포인트처럼,
git commit으로 현재 상태를 저장하고 언제든 되돌릴 수 있습니다. -
바이브코딩에서 Git은 필수입니다. AI가 대량의 파일을 한 번에 수정하므로, 커밋 없이 작업하면 문제 발생 시 복구가 불가능합니다. AI에게 큰 변경을 요청하기 전에 반드시 커밋하세요.
-
GitHub은 Git 기록을 온라인에 저장하는 서비스입니다. 코드 백업은 물론, Vercel 등과 연결하면 자동 배포도 가능합니다.
git push로 올리고,git pull로 가져옵니다.
바이브코딩 중 AI에게 큰 기능 변경을 요청하려고 합니다. 요청하기 전에 가장 먼저 해야 할 일은 무엇일까요?
연관 개념
터미널과 CLI (Terminal & CLI)
컴퓨터에게 텍스트 명령어를 입력해서 작업을 수행하는 도구입니다. AI 코딩 도구가 '이 명령어를 실행하세요'라고 할 때 사용하는 바로 그 검은 화면입니다.
환경 변수와 .env (Environment Variables)
프로그램이 실행될 때 참조하는 설정값으로, API 키나 비밀번호 같은 민감한 정보를 코드와 분리하여 안전하게 관리하는 방법입니다.
패키지 매니저 (npm)
다른 개발자가 만든 코드(패키지)를 쉽게 설치하고 관리할 수 있는 도구입니다. AI가 프로젝트를 만들면 가장 먼저 'npm install'을 실행하라고 하는데, 이것이 바로 필요한 패키지를 설치하는 명령어입니다.
관련 인사이트
바이브코딩 vs AI 에이전트 다른점 알아보기
바이브코딩과 AI 에이전트(Claude Code 등)를 모두 실무에 사용해 본 경험을 바탕으로, 둘의 작업 방식·코드 이해 수준·적합한 상황이 어떻게 다른지 비유와 비교표로 정리했습니다.
초보자를 위한 OAuth 2.0 이해하기
바이브코딩과 AI 에이전트로 빠르게 서비스를 만들 수 있는 시대입니다. 하지만 인증 구조를 이해하지 못하면 비밀번호가 코드에 그대로 노출되는 사고가 일어납니다. 인증의 기본 개념부터 OAuth 2.0까지, 비개발자도 이해할 수 있도록 정리했습니다.
Claude Code 커뮤니티에서 찾은 커스텀 Skill 세 가지 패턴
Claude Code의 핵심은 코드 생성이 아니라 Skill 시스템입니다. TDD 강제, 팀 맞춤 코드 리뷰, 실행 가능한 런북까지 — 전 세계 커뮤니티에서 실제로 쓰이는 3가지 커스텀 Skill 패턴을 정리했습니다.
