학습 목표
- Cursor의 Git 통합 기능 완벽 활용하기
- AI 도움으로 의미 있는 커밋 메시지 작성하기
- 복잡한 머지 충돌 해결 전략 익히기
- 브랜치 전략과 협업 워크플로우 구축하기
- 코드 리뷰와 PR 관리 최적화하기
Cursor의 Git 통합 기능
Cursor는 Git을 단순한 버전 관리 도구를 넘어 AI 기반 협업 플랫폼으로 확장합니다. 커밋 메시지 생성, 충돌 해결, 코드 리뷰까지 모든 과정에서 AI가 도움을 제공합니다.
통합 Git 인터페이스
Source Control
main
Changes (5)
M
src/App.jsx
A
src/components/Header.jsx
D
src/old-header.jsx
AI 기반 커밋 메시지 작성
머지 충돌 해결
AI 지원 충돌 해결
충돌 상황
<<<<<<< HEAD
function calculateTotal(items) {
return items.reduce((sum, item) => {
const price = item.price * item.quantity;
const tax = price * 0.1;
return sum + price + tax;
}, 0);
}
=======
function calculateTotal(items) {
const subtotal = items.reduce((sum, item) =>
sum + (item.price * item.quantity), 0);
const discount = subtotal > 100 ? subtotal * 0.05 : 0;
return subtotal - discount;
}
>>>>>>> feature/discount-system
AI 해결 방안
3-way 머지 시각화
Base (공통 조상)
function calculateTotal(items) {
return items.reduce((sum, item) =>
sum + (item.price * item.quantity), 0);
}
Ours (현재 브랜치)
// 세금 추가
Theirs (머지 대상)
// 할인 추가
브랜치 전략과 워크플로우
Git Flow with AI
main
develop
feature/user-auth
AI 지원 브랜치 관리
"새 기능을 위한 브랜치 만들어줘"
현재 작업을 분석한 결과, 사용자 인증 기능을 추가하시는 것 같습니다.
git checkout -b feature/user-authentication
# 또는 더 구체적으로:
git checkout -b feature/jwt-auth-implementation
"이 브랜치를 develop에 머지할 준비가 됐는지 확인해줘"
머지 전 체크리스트:
- ✅ 모든 테스트 통과
- ✅ 코드 리뷰 완료
- ⚠️ 문서 업데이트 필요
- ❌ CHANGELOG 업데이트 안됨
# 머지 전 권장 작업:
echo "## [1.2.0] - 2024-01-15" >> CHANGELOG.md
echo "### Added" >> CHANGELOG.md
echo "- JWT 기반 사용자 인증" >> CHANGELOG.md
git add CHANGELOG.md
git commit -m "docs: Update CHANGELOG for JWT auth feature"
협업과 코드 리뷰
AI 지원 Pull Request
PR 템플릿 자동 생성
## 개요 JWT 기반 사용자 인증 시스템을 구현했습니다. ## 변경사항 - ✨ JWT 토큰 생성 및 검증 로직 추가 - 🔐 인증 미들웨어 구현 - 🛡️ 보안 헤더 및 CORS 설정 - 📝 API 문서 업데이트 ## 테스트 - [x] 단위 테스트 작성 (coverage: 95%) - [x] 통합 테스트 완료 - [x] 수동 테스트 시나리오 검증 ## 체크리스트 - [x] 코드가 프로젝트 스타일 가이드를 따름 - [x] 모든 테스트 통과 - [x] 문서 업데이트 완료 - [x] 브레이킹 체인지 없음 ## 스크린샷  ## 관련 이슈 Closes #123
코드 리뷰 자동화
실습: Git 워크플로우 마스터하기
실제 프로젝트에서 Git 활용하기
Feature 브랜치 워크플로우를 실습해봅시다.
시나리오: 새로운 기능 개발부터 머지까지
Step 1: 이슈 생성 및 브랜치
# AI에게 요청
"사용자 프로필 편집 기능을 위한 브랜치 만들어줘"
# 생성된 명령어
git checkout -b feature/edit-user-profile
git push -u origin feature/edit-user-profile
Step 2: 개발 및 커밋
# 작업 후 AI에게 커밋 메시지 요청
"변경사항을 분석해서 적절한 커밋 메시지 만들어줘"
# AI 제안
git add src/components/ProfileEditor.jsx
git commit -m "feat(profile): Add inline editing for user profile
- Implement ProfileEditor component with form validation
- Add save/cancel functionality with optimistic updates
- Include error handling for failed updates"
Step 3: 리베이스 및 정리
# develop 브랜치의 최신 변경사항 가져오기
git fetch origin
git rebase origin/develop
# 충돌 발생 시 AI 도움 요청
"리베이스 충돌을 해결해줘"
Step 4: PR 생성
# AI에게 PR 설명 요청
"이 브랜치의 변경사항을 분석해서 PR 설명 만들어줘"
# GitHub CLI로 PR 생성
gh pr create --title "feat: Add user profile editing" \
--body "$(cat pr-description.md)" \
--base develop
💡 Git 프로 팁
- Interactive Rebase:
git rebase -i HEAD~3
로 커밋 정리 - Stash 활용:
git stash save "작업 중인 기능"
- Cherry-pick: 특정 커밋만 가져오기
- Reflog: 실수 복구의 마지막 수단
고급 Git 기능
Git Hooks with AI
pre-commit Hook
#!/bin/sh
# .git/hooks/pre-commit
# AI 코드 검사
cursor-cli check --ai-review
# 테스트 실행
npm test
# 코드 포맷팅
npm run format
# 커밋 메시지 가이드
echo "💡 팁: 'git commit' 대신 'cursor commit'을 사용하면 AI가 메시지를 제안합니다"
Git Aliases for Cursor
# ~/.gitconfig
[alias]
# AI 커밋
aic = !cursor commit
# AI 리뷰와 함께 푸시
pushrev = !git push && cursor review
# 스마트 머지
smerge = !cursor merge
# 충돌 해결
resolve = !cursor resolve-conflicts
핵심 정리
AI가 작성하는 커밋 메시지
변경사항을 분석하여 의미 있고 일관된 커밋 메시지를 자동으로 생성합니다.
스마트한 충돌 해결
AI가 코드의 의도를 파악하여 최적의 머지 전략을 제안합니다.
자동화된 코드 리뷰
PR 생성부터 리뷰 코멘트까지 AI가 품질 관리를 도와줍니다.
협업 워크플로우 최적화
팀의 Git 컨벤션을 학습하여 일관된 협업 환경을 구축합니다.
🔒 보안 이슈: 평문 비밀번호 비교는 위험합니다.