코드 리뷰와 변경 관리
학습 목표
- Antigravity Editor 소스 컨트롤로 Git을 사용할 수 있다
- Antigravity Editor의 Review Changes로 변경 사항을 확인할 수 있다
- 변경된 코드를 커밋하고 관리할 수 있다
1. Git이란?
Git은 코드의 변경 이력을 기록하고 관리하는 버전 관리 시스템입니다.
1.1 Git을 사용하는 이유
| 상황 | Git 없이 | Git 사용 |
|---|---|---|
| 코드 수정 후 문제 발생 | 이전 코드를 기억해서 복구 | 한 번의 클릭으로 복구 |
| 여러 기능 동시 개발 | 파일이 섞여서 혼란 | 각 기능별로 분리 관리 |
| 팀 협업 | 누가 뭘 바꿨는지 모름 | 모든 변경 이력 추적 |
💡 Git이 처음이라면?
Git과 GitHub의 기본 개념이 궁금하다면
GitHub 베이스캠프를 먼저 참고하세요. 이 장에서는 Antigravity에서 Git을 사용하는 방법을 다룹니다.
2. Antigravity Editor 소스 컨트롤 시작하기
Antigravity Editor에는 Git을 쉽게 사용할 수 있는 소스 컨트롤 기능이 내장되어 있습니다.
2.1 소스 컨트롤 패널 열기
Antigravity Editor 왼쪽 사이드바에서 소스 컨트롤 아이콘을 클릭하세요.
| 방법 | 설명 |
|---|---|
| 아이콘 클릭 | 왼쪽 사이드바의 분기 모양 아이콘 |
| 단축키 | Ctrl + Shift + G (Windows/Linux) |
| 단축키 | Cmd + Shift + G (Mac) |
2.2 Git 저장소 초기화하기
처음 소스 컨트롤을 열면 다음과 같은 화면이 나타날 수 있습니다.
그림 9-1: Git 저장소가 없을 때 나타나는 화면
이 화면은 현재 폴더에 Git 저장소가 없다는 의미입니다. Git을 사용하려면 먼저 저장소를 초기화해야 합니다.
방법 1: Initialize Repository
- Initialize Repository 버튼 클릭
- 현재 폴더가 Git 저장소로 변환됨
- 이제 소스 컨트롤 기능을 사용할 수 있음
방법 2: Publish to GitHub
GitHub에 바로 연결하고 싶다면 아래와 같이 진행하면 됩니다.
- Publish to GitHub 버튼 클릭
- GitHub 계정 로그인 (처음 사용 시)
- 저장소 이름 입력
- 공개(Public) 또는 비공개(Private) 선택
- 자동으로 GitHub 저장소가 생성되고 연결됨
💡 어떤 방법을 선택할까?
- 혼자 연습할 때: Initialize Repository로 시작
- GitHub에 저장하고 싶을 때: Publish to GitHub 선택
- 나중에 GitHub에 연결할 수도 있으니, 처음에는 Initialize Repository로 시작해도 괜찮습니다.
2.3 소스 컨트롤 화면 구성
소스 컨트롤 패널을 열면 다음과 같은 화면이 나타납니다.
┌─────────────────────────────────┐
│ 소스 컨트롤 │
├─────────────────────────────────┤
│ 메시지 입력란 │ ← 커밋 메시지 작성
│ [✓ 커밋] 버튼 │ ← 커밋 실행
├─────────────────────────────────┤
│ 변경 사항 (Changes) │
│ M index.html │ ← 수정된 파일
│ M style.css │ ← 수정된 파일
│ U script.js │ ← 새로 추가된 파일
└─────────────────────────────────┘
2.4 파일 상태 표시
| 표시 | 의미 | 설명 |
|---|---|---|
| M | Modified | 기존 파일이 수정됨 |
| U | Untracked | 새로 만든 파일 (Git이 아직 추적 안 함) |
| A | Added | 새 파일이 스테이징됨 |
| D | Deleted | 파일이 삭제됨 |
3. 변경 사항 확인하기 (Diff)
3.1 파일 클릭으로 변경 내용 보기
소스 컨트롤에서 파일을 클릭하면 변경 전후를 비교할 수 있습니다.
- 소스 컨트롤 패널에서 변경된 파일 클릭
- 편집기에 비교 화면(Diff)이 열림
- 왼쪽: 이전 코드 / 오른쪽: 현재 코드
3.2 Diff 화면 읽는 법
- <h1>Hello</h1> ← 빨간색: 삭제된 코드
+ <h1>Hello World!</h1> ← 초록색: 추가된 코드
| 색상 | 의미 |
|---|---|
| 빨간색 (-) | 삭제된 줄 |
| 초록색 (+) | 추가된 줄 |
| 회색 | 변경 없는 줄 |
4. 커밋하기: 변경 사항 저장
커밋(Commit)은 변경 사항을 Git에 저장하는 것입니다. 마치 게임의 세이브 포인트와 같습니다.
4.1 커밋하는 방법
1단계: 파일 스테이징하기
커밋할 파일을 선택합니다.
- 파일 옆의 + 버튼 클릭 → 해당 파일만 스테이징
- 변경 사항 옆의 + 버튼 클릭 → 모든 파일 스테이징
┌─────────────────────────────────┐
│ 변경 사항 (Changes) │
│ M index.html [+] │ ← + 클릭하여 스테이징
│ M style.css [+] │
├─────────────────────────────────┤
│ 스테이징된 변경 사항 │
│ (스테이징한 파일이 여기로 이동) │
└─────────────────────────────────┘
2단계: 커밋 메시지 작성
무엇을 변경했는지 설명을 입력합니다.
버튼 클릭 시 현재 시간 표시 기능 추가
3단계: 커밋 실행
- ✓ 커밋 버튼 클릭
- 또는
Ctrl + Enter(Windows/Linux) /Cmd + Enter(Mac)
💡 스테이징이란?
스테이징(Staging)은 "이 파일들을 커밋에 포함시키겠다"고 선택하는 과정입니다.
예를 들어 5개 파일을 수정했지만, 그 중 2개만 관련 있는 변경이라면 2개만 스테이징하여 커밋할 수 있습니다.
5. Antigravity Editor의 Review Changes
Antigravity Editor에서도 변경 사항을 확인하고 관리할 수 있습니다.
5.1 Review Changes 열기
Agent가 코드를 작성하면, Agent Side Panel 하단에 Review Changes 버튼이 나타납니다.
- Agent Side Panel 하단 확인
- Review Changes 클릭
- 변경 내용을 보여주는 패널이 열림
그림 9-2: Editor의 Review Changes
5.2 Review Changes에서 할 수 있는 것
| 기능 | 설명 |
|---|---|
| 변경 파일 목록 | Agent가 수정한 모든 파일 확인 |
| 코드 비교 (Diff) | 변경 전후 코드를 나란히 비교 |
| 댓글 달기 | 코드에 피드백을 남겨 수정 요청 |
5.3 코드에 피드백 남기기
Artifacts에 댓글을 다는 것처럼, 파일 diff에도 댓글을 남길 수 있습니다.
- 수정이 필요한 코드 줄 선택(드래그)
- Edit 또는 Chat 클릭
- 피드백 내용 입력
- Agent가 피드백을 확인하고 수정
피드백 예시:
이 함수명은 'handleSubmit'이 더 명확할 것 같아요.
여기에 에러 처리를 추가해주세요.
6. Agent Manager의 Review Changes
Agent Manager에서도 동일한 기능을 사용할 수 있습니다.
- Agent Manager에서 대화 선택
- 오른쪽 상단의 Review Changes 버튼 클릭
- Source Control 버튼 클릭
그림 9-3: Agent Manager의 Review Changes
7. 실습: Agent 작업 후 Git 커밋하기
7.1 실습 목표
- Agent에게 코드 작성 요청
- Review Changes로 변경 사항 확인
- 소스 컨트롤로 커밋
7.2 1단계: Agent에게 코드 작성 요청
버튼을 클릭하면 현재 시간을 표시하는 기능을 만들어주세요.
HTML, CSS, JavaScript로 만들어주세요.
7.3 2단계: Review Changes로 확인
Agent 작업이 완료되면
- Review Changes 클릭
- 생성된 파일 확인
- Diff로 코드 내용 검토
코드에서 수정이 필요하면 댓글로 피드백을 남기세요.
7.4 3단계: 소스 컨트롤로 커밋
만족스러운 결과가 나오면
Ctrl + Shift + G로 소스 컨트롤 열기- 변경된 파일 확인
- + 버튼으로 파일 스테이징
- 커밋 메시지 입력:
시간 표시 기능 추가 - ✓ 커밋 버튼 클릭
┌─────────────────────────────────┐
│ 시간 표시 기능 추가 │ ← 커밋 메시지
│ [✓ 커밋] │
├─────────────────────────────────┤
│ 스테이징된 변경 사항 │
│ A index.html │
│ A style.css │
│ A script.js │
└─────────────────────────────────┘
8. 변경 사항 되돌리기
8.1 소스 컨트롤에서 되돌리기
실수로 코드를 잘못 수정했다면 되돌릴 수 있습니다.
- 소스 컨트롤에서 해당 파일 찾기
- 파일 옆의 ↺ (Discard Changes) 아이콘 클릭
- 확인 팝업에서 Discard Changes 선택
주의
Discard Changes는 되돌릴 수 없습니다. 커밋하지 않은 변경 사항은 영구적으로 사라집니다. 중요한 코드라면 먼저 커밋하거나 백업하세요.
8.2 모든 변경 되돌리기
모든 파일의 변경을 한 번에 되돌리려면
- 소스 컨트롤 상단의 ⋯ (더보기) 메뉴 클릭
- Changes → Discard All Changes 선택
9. 좋은 커밋 습관
9.1 작업 단위로 커밋하기
하나의 기능을 완료할 때마다 커밋하세요.
❌ "여러 기능 추가"
✅ "로그인 폼 UI 구현"
✅ "로그인 유효성 검사 추가"
9.2 명확한 커밋 메시지 작성
무엇을 변경했는지 알 수 있게 작성하세요.
❌ "수정"
❌ "버그 픽스"
✅ "버튼 클릭 시 폼 중복 제출 방지"
✅ "모바일 화면에서 네비게이션 정렬 수정"
9.3 커밋 전 확인 체크리스트
커밋하기 전에 Diff를 확인하세요.
- 의도하지 않은 변경이 없는가?
- 디버깅용 코드(console.log 등)가 남아있지 않은가?
- 코드가 정상적으로 동작하는가?
10. 작업 흐름 정리
1. Agent에게 작업 요청
↓
2. Review Changes로 결과 확인
↓
3. 문제 있으면 → 피드백으로 수정 요청
문제 없으면 → 다음 단계로
↓
4. 소스 컨트롤 열기 (Ctrl+Shift+G)
↓
5. 파일 스테이징 (+ 버튼)
↓
6. 커밋 메시지 작성
↓
7. 커밋 (✓ 버튼)
11. 정리
| 도구 | 기능 |
|---|---|
| 소스 컨트롤 | Git 커밋, 스테이징, 변경 되돌리기 |
| Review Changes | Agent 작업 결과 확인, 피드백 |
| Diff | 변경 전후 코드 비교 |
💡 핵심 포인트
Agent가 작성한 코드를 Review Changes로 확인하고, 만족스러우면 소스 컨트롤로 커밋하세요. 이렇게 하면 언제든지 이전 상태로 돌아갈 수 있습니다.
12. 다음 단계
코드 리뷰와 변경 관리 방법을 익혔다면, 다음 챕터에서 실제 프로젝트를 진행해봅시다.
실전 프로젝트