코드 관리

Git(깃)

파일의 변경 내용을 기록하고 이전 기록과 비교하거나 복원하는 버전 관리 도구입니다.

쉬운 설명

AI에게 신청 버튼을 고쳐 달라고 했는데, 잘 되던 화면까지 달라진 적이 있나요? Git을 사용하면 어떤 파일의 어느 부분이 바뀌었는지 비교할 수 있어요. 잘 작동하는 상태를 커밋이라는 기록으로 남겨 두면, 나중에 그 기록을 기준으로 차이를 확인하거나 필요한 내용을 복원할 수 있어요. 파일을 저장할 때마다 커밋이 자동으로 만들어지는 것은 아니에요.

이런 상황에서 만나요

AI가 코드를 고친 뒤 변경 사항을 검토하거나, 기능을 추가하기 전에 현재 상태를 기록할 때 만납니다.

“AI가 어떤 부분을 고쳤는지 확인해 볼까요?”

신청 버튼의 문구를 바꾼 뒤 변경 내용을 검토하는 상황

설명용 화면
1 App.jsx · 변경 비교
2 버튼 문구 수정
− 이전<button>시작하기</button>
+ 수정<button>신청하기</button>
3아직 커밋하지 않은 변경
  1. 1App.jsx에서 바뀐 내용을 비교하는 화면입니다.
  2. 2문구가 시작하기에서 신청하기로 바뀌었습니다.
  3. 3아직 커밋 전입니다. 파일 저장과 Git 기록은 별개입니다.
빼기 표시는 이전 내용, 더하기 표시는 추가된 내용입니다. 이렇게 차이를 확인한 뒤 기록할 변경을 선택하고 커밋을 만들 수 있습니다.

AI가 신청 버튼의 문구를 바꿨다면 변경 비교 화면에서 요청한 문구만 바뀌었는지 확인합니다. 앱에서도 결과를 확인한 뒤 “신청 버튼 문구 수정”처럼 알아보기 쉬운 설명으로 커밋을 남깁니다.

헷갈리기 쉬운 점

저장 버튼을 눌렀는데 Git에 기록된 게 아닌가요?

저장은 현재 파일 내용을 바꾸는 작업이고, 커밋은 선택한 변경을 Git 이력에 남기는 작업입니다. 아직 커밋하지 않은 내용은 별도 이력으로 남아 있지 않을 수 있습니다. 온라인에 보내려면 원격 저장소와 push도 확인해야 합니다.

복원이나 변경 폐기 작업은 아직 기록하지 않은 수정을 지울 수 있습니다. AI에게 되돌려 달라고 할 때는 어떤 파일을 어느 기록으로 되돌릴지 먼저 확인합니다.

왜 알아야 할까요?

AI가 수정한 이유와 범위를 확인할 수 있습니다. 문제가 생겼을 때 현재 파일만 보고 추측하는 대신 남겨 둔 기록과 비교할 수 있습니다.

조금 더 자세히

Git으로 관리하는 프로젝트에서는 수정한 내용과 기록할 내용을 구분합니다. 변경 사항 중 기록할 내용을 선택하는 작업을 스테이징이라고 하고, 선택한 내용을 설명과 함께 기록하는 작업을 커밋이라고 합니다. 커밋 설명을 읽고 어떤 작업이었는지 알 수 있도록 한 가지 수정 목적에 맞춰 기록하면 비교하기 편합니다.

커밋은 내 컴퓨터의 저장소에도 만들 수 있습니다. GitHub 같은 원격 저장소로 기록을 보내는 작업은 push라고 하며 별도 단계입니다. Git을 쓴다는 것만으로 온라인에 백업되거나 모든 파일의 이전 내용이 보관되는 것은 아닙니다.

직접 사용할 때 확인해 보세요

  • AI가 바꾼 파일과 내용을 비교한다
  • 잘 작동하는지 확인한 뒤 의미 있는 단위로 커밋한다
  • 복원하기 전에 기록되지 않은 변경을 확인한다

관계 지도

Git(깃) 중심으로 관련 개념의 정의와 관계를 한눈에 정리했습니다.
Git(깃)의 정의와 관련 개념 간 관계를 설명한 계층형 그래프