01 / 26

Week 03 · AI 바이브 코딩

GitHub 사용법

2주차에 만든 v1·v2·v3 보고서를 GitHub에 올려 — 공개 URL로 공유하기. 코드 한 줄도 직접 안 침. Claude에게 자연어로.

📦 첫 repo ⬆️ push · ⬇️ pull · ⏪ rollback 🌐 GitHub Pages 공개 URL 💬 자연어 git

Week 03 · 목표

오늘 50분 후 — 가져갈 것 3가지

📦

본인 GitHub repo

2주차 v1·v2·v3 보고서가 모두 올라간 개인 저장소

🌐

공개 URL

GitHub Pages — 링크 한 줄로 누구든 즉시 접속

💬

자연어 git 경험

"올려줘 / 받아줘 / 어제로" — Claude가 git 대신 함

git 명령어 외울 필요 없습니다. 한국어 6문장이면 끝 — 오늘 그 6문장을 직접 입력해 봅니다.

PART 01 · 개론

GitHub이란 — 왜 쓰나

정의 → 어떻게 쓰는지 → 왜 유용한지

개론 · 1.1 · GitHub이 뭔가요

GitHub = 무한 ctrl+z + 공유 가능한 폴더

파일이 바뀐 모든 시점이 자동 저장됩니다. 언제든 되돌릴 수 있고, 누구든 링크 한 줄로 받아 갈 수 있어요.

기존 방식

📂 design-trends-2026/
 📄 slides_v1.html
 📄 slides_v2.html
 📄 slides_final.html
 📄 slides_real_final.html
 📄 slides_real_final_FIX.html

"이 중 어떤 게 최신이지?" 🤷

GitHub로

📦 design-trends-2026 (repo 1개)
 📄 slides.html (단 한 개)
 📜 commit 5개 (시점 5개)
 🌐 공개 URL 1개

"3일 전 버전으로" 한 줄로 복귀
다른 사람도 같은 파일을 받아 작업

📌 핵심 — 파일 이름으로 버전을 관리하지 않습니다. "한 개 파일 + 시점 기록"이 GitHub의 본질.

개론 · 1.2 · 어떻게 쓰나요

3 동사로 끝 — 올린다 · 받는다 · 되돌린다

하루의 GitHub 사용은 거의 항상 이 3가지 동작 안에서 일어납니다. 다른 건 변종일 뿐.

⬆️

VERB 01 · PUSH

올린다

내 PC의 변경 → GitHub로
"이 폴더 올려줘"

⬇️

VERB 02 · PULL

받는다

GitHub의 최신 → 내 PC로
"최신으로 받아줘"

VERB 03 · ROLLBACK

되돌린다

시점을 과거로 되감기
"어제 상태로 돌려줘"

💡 오늘 실습 — 이 3 동사를 전부 본인 손으로 Claude에게 시켜 봅니다

개론 · 1.3 · 왜 쓰나요

GitHub 사용 이유

"왜 굳이 복잡한 걸 배우지?" — 답은 이 5가지를 매주 쓰게 되기 때문입니다.

이전 버전 복구

"어제 잘 되던 그 버전으로 돌려줘" 한 줄이면 끝. 잘못 수정해도 어제·지난주 어떤 시점으로든 복구 가능.

💾

자동 백업

노트북 망가지거나 잃어버려도 GitHub에 안전하게 보관. 다른 PC에서 받아 바로 이어서 작업.

🔗

공개 URL

이메일 첨부 끝. GitHub Pages로 누구든 링크 클릭만으로 접속.

🤝

협업

여러 명이 같은 파일을 동시에 작업해도 충돌을 자동 감지. 누가 뭘 바꿨는지 줄 단위로 보임.

📜

변경 이력

"이 부분 누가 언제 왜 바꿨지?" 한 클릭으로 추적. 합리적 의사결정의 근거가 됩니다.

→ 오늘 실습은 이 5가지 중 이전 버전 복구 · 백업 · 공개 URL 3가지를 직접 경험합니다

개론 · 1.4 · 바이브코딩 × GitHub

바이브코딩에서 GitHub가 특히 중요한 이유

바이브코딩은 한 번 시킬 때마다 코드 전체가 바뀝니다. 그래서 안전망이 없으면 오늘의 결과물을 내일 잃어버려요.

🔄

PROBLEM 01

매번 코드가 바뀐다

"색깔만 바꿔줘"라고 한 줄 시켰는데 다른 부분까지 같이 수정됨. 어디가 바뀌었는지 눈으로 확인 불가.

⚠️

PROBLEM 02

원복이 거의 불가능

"방금 그거 좋았는데 망쳤다" — Ctrl+Z로 안 됨. 어제 잘 되던 버전이 어디 갔는지 본인도 모름.

💥

PROBLEM 03

실험을 못 한다

"한 번 더 시켜볼까?" 망설이게 됨. 안전망이 없으니 과감하게 못 바꿈 → 결과물 품질도 정체.

GitHub가 해결

매 시점이 자동 저장되니 → 과감하게 시켜보고, 마음에 안 들면 "어제 버전으로 돌려줘" 한 줄로 복귀. 바이브코딩의 안전망이자 실험 자유도.

PART 02 · 용어 알아보기

push · pull 그게 다

외울 필요 없음 — 흐름만 알면 OK. 우리는 Claude로 한다.

용어 · 2.1 · 알아만 두면 되는 7개

개발자가 자주 쓰는 7개 용어

앞으로 동료가 "PR 보내줘"라고 했을 때 멈칫하지 않을 정도면 충분합니다. 외우려 하지 마세요.

📦 01

Repository

레포 — 프로젝트 폴더 1개. "design-trends-2026"이 하나의 repo.

📜 02

Commit

커밋 — "이 시점을 저장". 한 commit = 한 시점. 메시지가 함께 붙음.

⬆️ 03

Push

푸시 — 내 PC의 commit을 GitHub로 올림. "올린다".

⬇️ 04

Pull

풀 — GitHub의 최신을 내 PC로 받음. "받는다".

🌿 05

Branch

브랜치 — 별도 작업 공간. main(=원본) 외에 따로 시도해 보고 싶을 때.

🔀 06

Pull Request

PR — "내 변경 검토하고 합쳐 달라"는 요청. 협업의 핵심.

⏪ 07 ⭐

Revert / Rollback

리버트 — 과거 시점으로 되감기. 오늘의 안전망.

📌 외우지 마세요.
다음 슬라이드의 자연어 매핑만 보시면 됩니다.

용어 · 2.2 · ⭐ 핵심

명령어는 짧게 — 우리는 Claude로 한다

CLI 명령어는 30개가 넘어요. 다 외우는 건 개발자의 일. 우리는 한국어 한 줄이면 됩니다.

CLI 명령어 (몰라도 됨)

⭐ Claude에게 던질 한 줄

git init && git add . && git commit && git push
"이 폴더를 GitHub에 올려줘"
git pull origin main
"GitHub 최신으로 받아줘"
git revert HEAD
"방금 변경 취소해줘"
git checkout abc123 -- file
"어제 상태로 돌려줘"
git diff HEAD~1
"뭐가 바뀌었는지 알려줘"
gh pr create --title ... --body ...
"PR 보내줘"

💡 git 명령어 30개 → 한국어 6문장이면 일주일치 GitHub 사용 끝

PART 03 · 실습

v1 → v2 → v3 GitHub에

2주차 보고서를 5 STAGE로 — 가입만 한 상태에서 23분 안에 공개 URL까지

실습 · STAGE 1.1 · 한 줄 입력 (1분)

채팅창에 — 폴더 이름 한 번

가정 — 지난주(2주차) 숙제로 GitHub 아이디만 가입한 직후. gh CLI도 인증도 없는 상태. 그래도 한 줄로 시작 — 나머지는 Claude가 처리합니다.

Claude Code · 채팅창STAGE 1.1 · 첫 한 줄
2주차에 만든 v1 슬라이드(design-trends-2026 폴더)를
GitHub에 새 repo로 올려줘.
commit 메시지는 "feat: v1 첫 보고서"로.

현재 폴더 — VSCode

📁 design-trends-2026/
  ├─ README.md
  ├─ design-system.md
  └─ slides.html  ← v1 상태

2주차 v1 슬라이드(slides.html)가 들어 있는 폴더. v2·v3는 같은 파일을 수정해 commit 시점으로 보존할 예정.

💡 다음 화면 — Claude는 먼저 "gh CLI가 없네요. 설치할게요" 라고 응답합니다.

실습 · STAGE 1.2 · 도구 자동 설치 (2분)

Claude의 첫 응답 — gh CLI 설치

GitHub과 명령으로 대화하려면 gh (공식 GitHub CLI)가 필요. Claude가 알아서 OS에 맞는 설치 명령을 제안 — 사용자는 y 한 번만 누르면 끝.

# Claude의 응답
GitHub CLI(gh)가 설치돼 있지 않네요.
Windows라서 winget으로 설치할게요.

# 실행할 명령 (사용자 승인 후)
$ winget install --id GitHub.cli

# 자동 진행 (1~2분)
Found GitHub CLI [GitHub.cli]
Downloading... ████████ 100%
Successfully installed

$ gh --version
gh version 2.62.0 (2026-04-15)

OS별 설치 — Claude가 자동 선택

WINDOWS
winget

winget install GitHub.cli

MACOS
Homebrew

brew install gh

LINUX
apt / dnf

sudo apt install gh

💡 보안 경고 / UAC 팝업이 뜨면 "예". 설치 끝나면 자동으로 STAGE 1.3으로 넘어갑니다.

실습 · STAGE 1.3 · 브라우저 로그인 (2분)

브라우저에서 — Authorize 한 번

터미널 명령은 Claude가 처리. 사용자는 평소 쓰는 브라우저에서 GitHub 로그인 → 떠 있는 페이지의 녹색 Authorize 버튼 한 번이면 끝.

🔒 github.com/login/oauth/authorize

@jane(본인 ID)에게 권한 요청

Authorize GitHub CLI

GitHub CLI by github would like permission to access your account.

REQUESTED PERMISSIONS

✓ Repositories — Public & Private
✓ Workflows — Update GitHub Actions
✓ Personal user data — Read

Cancel

브라우저 단계 — 4단계

1

브라우저 자동으로 열림

Claude가 명령 실행 → 평소 쓰는 브라우저에 새 탭이 뜸.

2

GitHub 로그인 (평소처럼)

이미 로그인돼 있으면 바로 다음 화면. 안 돼 있으면 이메일·비밀번호 입력.

3

녹색 "Authorize gh CLI" 클릭

왼쪽 화면처럼 — repo·workflow 권한 허용. 이게 핵심 한 번.

4

"You're all set." → 탭 닫기

Claude가 자동으로 다음 단계 진행.

✓ 한 번만 거치면 됩니다 — 다음부터 Claude가 알아서 인증 사용.

실습 · STAGE 1.4 · 자동 실행 (1분)

인증 끝 → Claude가 — 알아서 끝까지

인증된 직후 Claude는 1.1의 한 줄을 다시 꺼내 — repo 생성 → 첫 commit → push까지 한 호흡에 처리. 사용자는 가만히 보면 됩니다.

# 인증 직후 Claude의 자동 진행
Claude: 인증 끝났어요. 이제 repo를 만들고 올릴게요.

$ gh repo create design-trends-2026 --public --source=. --remote=origin
✓ Created repository jane/design-trends-2026 on GitHub
✓ Added remote https://github.com/jane/design-trends-2026.git

$ git add -A
$ git commit -m "feat: v1 인터랙티브 보고서"
[main (root-commit) a3f2e91] feat: v1 인터랙티브 보고서
 3 files changed, 824 insertions(+)

$ git push -u origin main
Enumerating objects: 14, done.
To https://github.com/jane/design-trends-2026.git
 * [new branch]  main -> main
Branch 'main' set up to track 'origin/main'.

Claude가 자동 처리

gh repo create
git init
③ remote add origin
git add -A
git commit
git push -u

💡 한 줄로 시작했지만 — 내부적으로 6단계가 자동 진행. 다음 화면에서 결과 확인.

실습 · STAGE 1.5 · 결과 확인 (1분)

github.com에 — 본인 repo 보임

브라우저에서 github.com/{내아이디} 접속 — 새 repo가 보입니다. 누구나 클릭만으로 들어올 수 있는 공개 주소를 가입 직후 7분 만에 확보.

github.com/jane/design-trends-2026Public
📦 1 commit · 🌿 1 branch · 3 files · ⭐ 0
jane feat: v1 인터랙티브 보고서a3f2e91 · just now
📄 README.md
📄 design-system.md
📄 slides.html  ← v1 상태

체크리스트

✅ repo 생성됨 — Public
✅ 첫 commit — slides.html (v1 시점) 업로드
✅ 공개 URL 확보

공개 URL

github.com/jane/
design-trends-2026

📌 다음 STAGE 2 — v2 슬라이드 추가도 같은 한 줄로. 인증·repo 생성은 끝.

실습 · STAGE 2 · 같은 파일 · 새 시점 (4분)

slides.html을 v2로 → 한 줄로 새 시점 저장

STAGE 1에서 slides.html(v1 상태)을 올렸습니다. 같은 파일을 v2로 개선해 다시 push — 이전 v1 시점은 GitHub에 그대로 남고, v2가 새 commit으로 추가됩니다. "v1 시점으로 돌려줘"가 가능한 이유.

패턴 A · 짧게매일 쓰는 명령
slides.html을 v2로 다 고쳤어. GitHub에 올려줘.
패턴 B · 메시지 명시의미를 남기고 싶을 때
slides.html에 다크 모드 + 공지 배너 추가했어.
commit 메시지는 "feat: v2 다크모드 추가"로 push해줘.

COMMIT 1 ✓

📸 slides.html (v1 시점)

a3f2e91 · feat: v1 첫 보고서

COMMIT 2 · 지금 ⚡

📸 slides.html (v2 시점)

b7d5c12 · feat: v2 다크모드

COMMIT 3 · 곧

📸 slides.html (v3 시점)

v3 마무리 → 한 줄 더

파일은 1개(slides.html), commit은 3개(시점 3개). 언제든 "v1로 돌려줘"·"v2로 돌려줘" 가능 — 이게 GitHub 본질.

실습 · STAGE 2 · v3 마무리 push (3분)

v3까지 — 패턴 한 번 더

v2 push와 완전히 같은 한 줄 패턴. slides.html을 v3로 마지막 다듬고 push — commit 시점 3개(v1·v2·v3)가 모두 GitHub에 보존됩니다.

패턴 A · 짧게v2 push와 동일
slides.html을 v3로 마무리했어. 올려줘.
패턴 B · 메시지 명시의미 남기기
v3에 인터랙션 + 차트 마감했어.
commit 메시지는 "feat: v3 인터랙션 마감"으로.

COMMIT 1 ✓

📸 slides.html (v1)

a3f2e91 · feat: v1

COMMIT 2 ✓

📸 slides.html (v2)

b7d5c12 · feat: v2

COMMIT 3 · 지금 ⚡

📸 slides.html (v3)

c9e8a4f · feat: v3

→ GitHub Commits 페이지 → 시점 3개 보임. 이제 다음 STAGE 3 — 안전망(롤백) 사용해 봅니다.

실습 · STAGE 3 · ⏪ 롤백 — 이전 시점 복구 (4분)

실수했을 때 — "v2 시점으로 다시"

v3까지 push했는데 "v3가 별로네 — v2가 나았다" 싶으면 한 줄로 되돌리기. commit 시점 3개를 만들어 둔 덕분. 3가지 자주 쓰는 시나리오:

시나리오 ① · 방금 취소
방금 변경 취소하고
직전 시점으로 돌려줘.
시나리오 ② · v1 시점
slides.html을 v1 시점으로
되돌려줘. (a3f2e91 commit)
시나리오 ③ · v2 시점
v3가 별로네 — v2 시점으로
다시 돌려줘.

Claude가 자동으로 하는 것

① 이력 조회 → git log --oneline
최근 commit 5개 보여줌

② 안전한 되돌림 → git revert 또는 git checkout 시점 -- 파일

💡 안전 — Claude는 git reset --hard 같은 위험 명령은 확인 묻고 진행. 작업 사라질 일 거의 없음.

실습 · STAGE 3 보너스 · 🕰 VS Code Timeline (2분)

설치 없이 — VS Code Timeline에서 시점 비교

VS Code 내장 기능. 익스텐션 설치 불필요. 파일 1개 클릭 → 좌측 사이드바 하단 TIMELINE 탭 → slides.html의 v1·v2·v3 시점이 시간순으로 보입니다.

design-trends-2026 — Visual Studio Code
EXPLORER
▾ DESIGN-TRENDS-2026
📄 README.md
📄 design-system.md
📄 slides.html  ← 클릭됨
TIMELINE — slides.html

feat: v3 인터랙션 마감

36 minutes ago · jane · c9e8a4f

feat: v2 다크모드 추가

1 hour ago · jane · b7d5c12

feat: v1 첫 보고서

3 hours ago · jane · a3f2e91

사용법 — 마우스만

1

Explorer 사이드바에서 파일 클릭

예: slides.html 클릭. 좌측 사이드바 좌상단 첫 번째 아이콘.

2

하단 TIMELINE 섹션 펼치기

Explorer 맨 아래에 자동 표시. 그 파일의 commit 이력 + 로컬 자동저장 모두.

3

v1·v2·v3 시점 클릭 → diff 비교

한 항목 클릭 = 그 시점과 현재의 차이가 화면에 뜸. 마우스만으로 시점 비교.

4

우클릭 → "Restore" 가능

이전 시점 그대로 복원. (Claude의 "v1로 돌려줘"와 동일 결과)

💡 STAGE 3 안전망의 시각화 — VS Code만 열면 v1·v2·v3 시점이 마우스 한 번에 비교됩니다.

실습 · STAGE 3 보너스 · 🚫 .gitignore (2분)

올리면 안 되는 파일 — .gitignore에 적어두기

GitHub은 공개 폴더입니다. 비밀번호·API 키는 한 번 push되면 인터넷에 영원히 박제 — 그래서 .gitignore 파일에 미리 적어두면 Claude가 자동으로 제외합니다. 안전망의 또 한 축.

📄 .gitignore
# 비밀 — 절대 push 금지
.env
*.key
secrets/

# 시스템·임시 파일
.DS_Store
Thumbs.db
*.tmp

# 무거운 캐시·빌드 결과
node_modules/
dist/
.cache/

자주 막는 3가지 카테고리

🔐

비밀번호·API 키

한 번 올라가면 검색되어 도용 위험. 가장 중요.

🗑

시스템 임시 파일

.DS_Store(맥), Thumbs.db(윈도우) 등 — 협업할 때 충돌 유발

📦

캐시·빌드 결과

node_modules 같은 거. 다른 PC에서 다시 만들면 됨 — 굳이 push 불필요

💬

Claude에게 한 줄

"이 폴더에 맞는 .gitignore 만들어줘. 비밀·임시·캐시 파일 다 빼줘."

실습 · STAGE 4.1 · 다음 주 맛보기 (1분)

마지막 — 스킬 하나로 v3 더 쉽게 다듬기

지금까지는 git/GitHub 사용. 마지막으로 Claude에 "스킬"이라는 확장 기능을 하나만 깔아봅니다. 새로 만드는 게 아니라, 오늘 만든 slides.html v3를 더 보기 좋게 다듬는 데 써봅니다.

STEP 1 · 1분

📦 설치

"frontend-design 스킬 설치해줘" 한 줄

STEP 2 · 3분

🎨 v3 업데이트

기존 slides.html v3에 스킬로 다듬기

STEP 3 · 1분

✅ 결과 확인

마음에 들면 push, 아니면 v3 시점으로 롤백

📌 스킬 = Claude의 전문 분야 확장팩. 수십 가지 존재 — 원리·종류는 다음 주, 오늘은 동작 한 번만.

실습 · STAGE 4.2 · 한 줄로 설치 (1분)

Claude에게 — "설치해줘" 한 줄

마켓플레이스 검색·다운로드·활성화는 Claude가 자동으로 처리. 사용자는 평소처럼 자연어 한 줄.

Claude Code · 채팅창설치 한 줄
frontend-design 스킬 설치해줘.

Claude의 응답 — 약 30초 후

"frontend-design 스킬을 설치했습니다. 이제 디자인 관련 요청을 하시면 자동으로 이 스킬이 동작합니다."

💡 한 번 설치 → 영구 활성. 다음 프로젝트·다음 주에도 자동 사용 가능.

실습 · STAGE 4.3 · v3 업데이트 (3분)

기존 slides.html v3 — 스킬로 한 단계 다듬기

새 파일 만드는 게 아닙니다. STAGE 2에서 만든 slides.html v3를 같은 스킬로 spacing·hierarchy·hover까지 끌어올림 — Claude가 알아서 적용합니다.

예시 ① · 전반 다듬기자연어
slides.html v3를 frontend-design
스킬로 다듬어줘.
spacing·hierarchy·hover 모두 챙겨서.
예시 ② · 특정 섹션자연어
slides.html v3 hero 섹션만
디자인 다듬어줘. 다른 부분은 그대로.

스킬이 자동으로 챙기는 것 — 사용자는 신경 안 써도 됨

🎨 컬러·타이포

의도적인 팔레트·폰트 페어링

📐 spacing·hierarchy

균일 패딩 X, 의도적 리듬

✨ hover·motion

상호작용·미세 애니메이션

🚫 generic AI 회피

템플릿스러운 결과물 차단

→ 결과는 새 commit으로 자동 저장 (v3 → v3.1 시점). 마음에 안 들면 STAGE 3에서 배운 "v3 시점으로 돌려줘"로 안전 복귀.

실습 · STAGE 4.4 · 결과 (1분)

v3 → v3 + 스킬 — 같은 콘텐츠, 다른 품질

텍스트·정보는 그대로. spacing·hierarchy·motion만 한 단계 위로 — 스킬이 한 일.

BEFORE · slides.html v3

균일 카드 · 평범한 spacing

AFTER · v3 + frontend-design

Bento 레이아웃 · hierarchy · 호버 챙김

→ 다음 주 — 이런 스킬이 수십 가지 있다는 걸 배우고, 본인 업무에 맞춰 골라 쓸 수 있게 됩니다

Week 03 완료

수고하셨습니다 — 다음 주에 만나요

오늘 STAGE 4에서 /frontend-design 맛보기로 본 그 흐름 — 다음 주는 스킬·MCP의 원리를 더 깊게 다룹니다.

🗓 다음 주 · Week 04

/스킬 & MCP — 무엇이고, 왜 쓰나

·

/스킬 — Claude를 본인 업무에 맞게 확장하는 방식. 오늘 본 frontend-design처럼 수십 가지가 이미 존재.

·

MCP — Claude가 외부 도구(Figma·노션·DB 등)와 직접 연결되는 원리.

·

실습 단계 들어가기 전 "왜 강력한가"를 먼저 이해.

AI 팀 교육 · Week 03 · GitHub 사용법 (Claude로 자연어 git)