바이브 코딩을 하다 보면 수시로 또는 반복적으로 “아, 1시간 전으로 돌아가고 싶다”거나 “방금 수정한 코드가 왜 전체를 망가뜨렸지?”라는 순간이 반드시 옵니다. 이는 나의 무지와 AI의 할루시네이션으로 인한것으로 반드시 백업은 필요하며 이를 가장 쉽게 만들어 놓은 플랫폼이 Git과 GitHub입니다.
깃(Git)은 이런 절망적인 상황에서 여러분을 구해줄 ‘코드 타임머신’이자 ‘생존 도구’입니다.
깃(Git)이란
깃(Git)은 파일의 변화를 시간에 따라 기록하는 버전 관리 시스템(VCS)입니다. 단순히 파일을 복사해서 최종, 진짜최종, 진짜마지막최종.hwp을 만드는 것이 아니라, 코드의 변경 사항을 한 줄 한 줄 추적합니다.
💡 핵심 비유: ‘상점 공사 일지’
-
건물을 지을 때 매일 어떤 벽돌을 쌓았고, 어떤 전선을 연결했는지 상세히 기록하는 일지와 같습니다.
-
만약 전선을 잘못 연결했다면, 일지를 보고 전선을 연결하기 전인 ‘어제 상태’로 건물을 되돌릴 수 있습니다.
깃(Git)의 3대 핵심 동작
Commit (기록): “현재 상태 스냅샷 찍기”
지금까지 작업한 내용을 로컬(내 컴퓨터) 저장소에 영구적으로 기록하는 것입니다. 그리고 커밋을 할 때는 반드시 ‘커밋 메시지’를 남깁니다. (예: “로그인 버튼 색상 변경”, “결제 버그 수정”) 이러한 이유로 나중에 메시지만 보고도 언제 어떤 작업을 했는지 한눈에 알 수 있습니다.
Push (보관): “온라인 창고로 전송”
내 컴퓨터에 기록된 공사 일지(Commit들)를 온라인상의 원격 저장소(GitHub, GitLab 등)로 업로드하는 것입니다.
내 컴퓨터가 갑자기 고장 나더라도, GitHub에 Push해둔 코드가 있다면 언제든 다른 컴퓨터에서 복구할 수 있습니다. 일종의 ‘클라우드 백업’입니다.
Pull (동기화): “최신 상태로 업데이트”
원격 저장소에 있는 최신 코드를 내 컴퓨터(또는 서버)로 내려받는 것이고 Vultr 같은 서버에서 서비스를 운영할 때, 내 컴퓨터에서 개발해 Push한 최신 기능을 서버에서 Pull하기만 하면 즉시 반영됩니다.
깃(Git)은 선택이 아닌 필수
깃(Git)을 사용하는 것은 단순히 코드를 저장하는 것을 넘어, 실수에 대한 두려움을 없애주는 심리적 안정 장치를 마련하는 것입니다. 언제든 되돌릴 수 있다는 확신이 있을 때, 여러분의 ‘바이브 코딩’은 더욱 과감하고 창의적으로 변할 수 있습니다.
운영체제별 Git 설치 방법과 설치 후 필수 초기 설정 과정을 정리해 드립니다.
깃(Git) 설치
🪟 Windows에서 깃(Git) 설치하기
-
공식 사이트 이용: Git 공식 웹사이트(git-scm.com)에 접속하여 Windows용 설치 파일(.exe)을 다운로드한 후 실행합니다.
-
설치 옵션: 설치 마법사에서 에디터, 줄바꿈 방식, 기본 브랜치명(최근에는
main을 권장) 등을 선택할 수 있으며, 잘 모를 경우 대부분 기본값(Next)을 선택해도 무방합니다. -
단, 속도 향상을 위한 파일 시스템 캐싱(Enable file system caching)과 보안 및 편의성을 위한 자격 증명 관리자(Enable Git Credential Manager) 옵션은 체크하는 것이 좋습니다.
-
환경 변수: 설치 시 자동으로 환경 변수(
Path)가 등록되지만, 만약 등록되지 않았다면 시스템 속성의 환경 변수 설정에서 Git 설치 경로 내의bin및cmd폴더를 직접 추가해야 합니다. -
Winget 이용: 최신 윈도우 환경에서는 터미널에
winget install --id Git.Git -e --source winget명령어를 입력하여 간편하게 설치할 수도 있습니다.
🍎 Mac(macOS)에서 깃(Git) 설치하기
-
공식 사이트 이용: Windows와 마찬가지로 공식 사이트에서 Mac용 Git 설치 파일을 다운로드하여 설치할 수 있습니다.
-
Homebrew 이용 (권장): 맥의 패키지 관리 도구인 Homebrew가 있다면, 터미널을 열고
brew install git명령어 한 줄로 손쉽게 설치 및 환경 변수 등록까지 해결할 수 있습니다. -
환경 변수 수동 등록: 만약 자동 등록이 안 되었다면 사용 중인 셸(bash_profile이나 zshrc) 설정 파일에
export PATH=/usr/local/bin/git:$PATH를 추가하여 경로를 지정해 줍니다.
🐧 Linux에서 깃(Git) 설치하기
리눅스는 시스템 디렉터리에 설치되므로 반드시 관리자 권한(sudo)을 사용하여 패키지 매니저로 설치해야 합니다.
-
Ubuntu / Debian: 터미널에
sudo apt update입력 후sudo apt install git을 실행합니다. -
CentOS:
sudo yum install git을 실행합니다. -
Rocky:
sudo dnf install git을 실행합니다. -
Arch:
sudo pacman -S git을 실행합니다.
✅ 설치 확인 및 필수 초기 설정 (공통)
설치가 완료되었다면 터미널(Windows의 경우 Git Bash나 cmd)을 열고 다음의 확인 및 설정 과정을 거쳐야 합니다.
-
버전(설치) 확인:
git --version명령어를 입력하여 Git 버전이 정상적으로 출력되는지 확인합니다. -
최초 사용자 정보 설정: Git은 버전 관리를 할 때 누가 코드를 수정했는지 식별해야 하므로, 설치 직후 사용자 이름과 이메일을 딱 한 번 설정해 주어야 합니다.
-
이름 설정: git config –global user.name “본인 이름”
-
이메일 설정: git config –global user.email “본인 이메일@example.com”
-
설정 내역 확인:
git config --list명령어를 입력하여 앞서 입력한 사용자 정보가 올바르게 저장되었는지 점검할 수 있습니다.
🤖 실전! Git에 프로젝트 저장
사전작업
GitHub에 코드와 히스토리를 기록 할려면 본인 확인을 위한 ID(사용자 이름)와 비밀번호 대신 사용하는 토큰(Fine-grained Personal Access Token)이 반드시 필요합니다.
- GitHub 로그인 후 우측 상단 프로필 클릭 -> Settings 이동.
- 왼쪽 최하단 Developer settings 클릭.
- Personal access tokens -> Fine-grained tokens 선택.



- Generate new token 클릭 (이름은 ‘MyVibeProject’ 등으로 설정).
- Repository access에서 ‘All repositories’ 또는 ‘Only select repositories’ 선택.

- Permissions에서 Contents(읽기/쓰기), Metadata(읽기) 권한을 허용합니다.

- Generate token 버튼을 누르면 토큰이 생성됩니다. 그리고 생성된 github_pat_…로 시작하는 코드를 꼭 따로 복사해두세요. (중요!! 한 번만 보여줍니다!)
- New repository(저장 폴더) 만들기
- 깃허브 메인에서 오른쪽 상단 [+] 버튼 -> [New repository] 클릭.

- Repository name에 my-project 입력.

- 맨 아래 [Create repository] 클릭 (다른 설정은 건드리지 마세요).
✨ 사용자의 의도(Vibe)
"이 프로젝트를 내 깃허브(`geecgpia1`)에 `my-project`라는 이름의 새 저장소로 만들어서 연결해줘. 첫 기록은 'Initial Setup'으로 하고, 토큰은 ‘github_pat_’ 이거야. 그리고 `/scripts/save.sh` 자동화 스크립트도 만들어줘." 💡 지금은 바이브 명령이 어려울수 있는데 그냥 내 프로젝트를 웹상에 저장(히스토리포함)하고 매번 실행하는 쉬운 명령을 만들어 달라는 이야기 입니다.
💻 AI가 생성한 코드 (Syntax)
- scripts/save.sh
import asyncio– 생략 –class BaseConsumer:
def __init__( self, url: str, throttle_interval: float = 1.0, max_reconnect_attempts: int = 10, initial_backoff: float = 1.0, max_backoff: float = 60.0 ): -생략-
def stop(self): """ 컨슈머 중지 """ self._is_running = False logger.info("WebSocket 컨슈머를 중지합니다.")
- github에서 확인

- 앞으로 /scripts/save.sh만 하면 저장됩니다.