반응형
AI CLI + Git 자동화 (코드 자동 리팩토링 시스템 만들기)
AI CLI를 단순히 수동으로 사용하는 단계에서 벗어나 Git과 결합하면 완전한 자동화 시스템을 만들 수 있다.
이번 글에서는 코드 커밋 시 자동으로 AI가 코드 개선을 수행하는 시스템을 구축해본다.
1. 목표
git commit → AI 실행 → 코드 수정 → 다시 커밋
이 흐름을 자동화하면 코드 품질을 일정하게 유지할 수 있다.
2. Git Hook이란?
Git에는 특정 이벤트 시 자동으로 스크립트를 실행하는 기능이 있다. 이를 Git Hook이라고 한다.
대표적으로 아래 시점에 실행 가능하다.
- pre-commit (커밋 전)
- commit-msg (커밋 메시지 작성 시)
- pre-push (푸시 전)
3. 자동화 구조
1. 변경 파일 감지
2. AI로 코드 분석
3. 수정 코드 생성
4. 파일 반영
5. 커밋 진행
4. pre-commit Hook 설정
프로젝트 루트에서 아래 파일을 생성한다.
.git/hooks/pre-commit
실행 권한 추가:
chmod +x .git/hooks/pre-commit
5. 기본 스크립트 작성
#!/bin/bash
echo "🔍 변경된 Swift 파일 검사 중..."
FILES=$(git diff --cached --name-only --diff-filter=ACM | grep ".swift")
if [ -z "$FILES" ]; then
echo "변경된 Swift 파일 없음"
exit 0
fi
for FILE in $FILES; do
echo "AI 처리 중: $FILE"
CONTENT=$(cat "$FILE")
RESPONSE=$(openai responses.create \
-m gpt-4.1 \
-i "다음 Swift 코드를 더 개선해라:\n\n$CONTENT\n\n리팩토링 및 가독성 개선 중심으로 수정해라.")
echo "$RESPONSE" > "$FILE"
git add "$FILE"
done
echo "✅ AI 코드 자동 수정 완료"
6. 동작 방식
이제 커밋을 하면 아래 과정이 자동 실행된다.
- 변경된 Swift 파일 감지
- AI로 코드 분석
- 자동 리팩토링
- 수정된 파일 다시 staging
7. 실전 활용 예시
코드 스타일 통일
"Swift 스타일 가이드에 맞게 수정"
비동기 코드 개선
"async/await 구조로 변경"
불필요 코드 제거
"중복 코드 제거 및 최적화"
8. 위험 요소 (중요)
- 자동 덮어쓰기 위험
- 예상치 못한 코드 변경
- 빌드 실패 가능성
👉 반드시 아래 방식을 권장한다.
- 백업 파일 생성
- diff 기반 검토
- 테스트 후 적용
9. 더 안전한 구조 (추천)
1. diff 기반 적용
git diff
전체 코드가 아닌 변경된 부분만 수정
2. 특정 파일 필터링
grep "Network"
중요 파일만 대상으로 제한
3. 수동 승인 단계 추가
AI 결과 확인 후 적용
10. 확장 아이디어
- commit 메시지 자동 생성
- 코드 리뷰 자동화
- CI/CD 파이프라인 연동
- 테스트 코드 자동 생성
11. 추천 워크플로우
1. 코드 작성
2. git add
3. git commit
4. AI 자동 리팩토링
5. 최종 코드 반영
이 구조를 활용하면 반복적인 코드 개선 작업을 제거할 수 있다.
12. 정리
AI CLI와 Git을 결합하면 완전한 개발 자동화 환경을 구축할 수 있다.
- 코드 품질 자동 유지
- 리팩토링 자동화
- 개발 생산성 향상
다음 글 추천
📌 AI CLI 시리즈
반응형
'IT' 카테고리의 다른 글
| AI 코딩 도구 비교 (Cursor vs Copilot vs OpenAI CLI vs Ollama) (0) | 2026.03.26 |
|---|---|
| AI CLI로 iOS 개발 자동화하기 (Tuist / TCA 실무 활용 심화) (0) | 2026.03.26 |
| OpenAI CLI 비용 얼마나 나올까? (실제 사용 기준으로 계산해보기) (0) | 2026.03.26 |
| AI CLI를 실무에 적용하는 방법 (iOS / Tuist 자동화 활용 가이드) (0) | 2026.03.26 |
| Mac에서 로컬 AI 사용하는 방법 (Ollama로 오프라인 AI 구축하기) (0) | 2026.03.26 |