파일명에 ‘최종’, ‘진짜최종’을 붙여본 적 있으신가요
보고서나 스크립트 파일을 작업하다 보면 어느새 폴더 안에 이런 파일들이 쌓입니다.
- 제안서_v1.docx
- 제안서_v2_수정.docx
- 제안서_v2_최종.docx
- 제안서_v2_진짜최종.docx
- 제안서_v2_진짜최종_이거씀.docx
이건 사실 버전 관리를 손으로 흉내 내고 있는 상황입니다. 문제는 시간이 지나면 어떤 파일이 실제로 쓰인 최종본인지, 무엇이 바뀌었는지 기억나지 않는다는 점입니다. 파이썬 스크립트나 자동화 코드도 마찬가지입니다. 엑셀 반복 업무를 파이썬으로 자동화하다 보면 스크립트를 수정할 일이 잦은데, 잘 되던 코드를 고쳤다가 오히려 안 되게 만들고 이전 버전으로 되돌리지 못해 당황하는 경우가 생깁니다.
Git은 바로 이 문제, 즉 “무엇이 언제 왜 바뀌었는지”를 기록하고 필요하면 되돌릴 수 있게 해주는 도구입니다. 협업 도구로만 알려져 있지만 혼자 작업할 때도 충분히 유용합니다.
Git이 하는 일, 세 줄로 정리하면
Git은 파일이 바뀔 때마다 그 변경 내용을 스냅샷처럼 저장합니다. 워드나 한글의 ‘변경 내용 추적’과 비슷하지만 코드나 텍스트 파일 전체를 대상으로, 그리고 원할 때마다 기록을 남긴다는 점이 다릅니다.
핵심 동작 세 가지만 이해하면 됩니다.
- 커밋(commit) - 지금 상태를 하나의 기록으로 저장합니다.
- 로그(log) - 지금까지 저장한 기록들을 시간순으로 확인합니다.
- 되돌리기(checkout, revert) - 과거의 특정 기록 시점으로 돌아갑니다.
이 세 가지만으로도 “어제까지는 잘 됐는데 오늘 고치고 나서 안 된다”는 상황에서 어제 버전으로 즉시 돌아갈 수 있습니다.
실습으로 감 잡기
Git을 설치한 뒤 명령 프롬프트나 터미널에서 다음 순서로 따라 해보면 개념이 훨씬 쉽게 잡힙니다.
# 1. 작업 폴더에서 Git 저장소 시작
git init
# 2. 파일 상태 확인
git status
# 3. 변경된 파일을 기록 대상에 추가
git add report_script.py
# 4. 지금 상태를 하나의 기록으로 저장
git commit -m "월간 보고서 자동화 스크립트 1차 버전"
이후 스크립트를 수정하고 다시 git add, git commit을 반복하면 수정할 때마다 기록이 쌓입니다. 만약 오늘 수정한 내용이 문제를 일으켰다면 아래처럼 확인하고 되돌릴 수 있습니다.
# 지금까지의 기록 확인
git log --oneline
# 특정 시점 기록으로 되돌리기
git checkout a1b2c3d -- report_script.py
여기서 a1b2c3d는 git log로 확인한 기록의 고유 번호입니다. 파일명 뒤에 버전을 붙이지 않아도, 원하는 시점의 코드를 언제든 다시 꺼내올 수 있는 구조입니다.
GitHub은 Git의 클라우드 저장소
Git이 내 컴퓨터 안에서 기록을 관리하는 도구라면, GitHub은 그 기록을 인터넷 저장소에 올려 공유하는 서비스입니다. 혼자 작업하더라도 GitHub에 코드를 올려두면 컴퓨터가 고장 나거나 바뀌어도 작업 기록을 그대로 이어받을 수 있습니다.
실무에서는 이런 상황에 자주 쓰입니다.
- 자동화 스크립트를 팀 내 다른 담당자와 공유해야 할 때
- 여러 명이 같은 파이썬 프로젝트를 나눠서 수정할 때
- 코드가 아니어도 반복 수정되는 설정 파일, 템플릿 문서를 이력 관리하고 싶을 때
특히 자동화 스크립트를 만든 뒤 유지보수하는 과정에서 무엇을 언제 왜 고쳤는지 기록을 남기는 습관이 중요하다고 이미 안내드린 적이 있는데, Git의 커밋 메시지가 바로 그 기록 역할을 자동으로 대신해줍니다. 별도의 로그 문서를 쓰는 대신 커밋 메시지에 “왜 고쳤는지”를 한 줄 남기는 습관만 들여도 절반은 해결됩니다.

비전공자가 처음 시작할 때 주의할 점
Git을 처음 배울 때 명령어를 전부 외우려고 하면 금방 지칩니다. 처음에는 init, add, commit, log, 이 네 가지만 익숙해지면 충분합니다. 브랜치(branch)나 병합(merge) 같은 협업용 개념은 실제로 여러 명과 같은 코드를 동시에 수정할 일이 생겼을 때 배워도 늦지 않습니다.
또한 커밋 메시지는 “수정함”, “업데이트” 같은 모호한 표현보다 “거래처별 시트 분리 로직 추가”, “날짜 형식 오류 수정”처럼 구체적으로 남기는 편이 나중에 로그를 볼 때 훨씬 도움이 됩니다. 이는 엑셀과 파이썬에서 반복되는 텍스트 정리를 규칙화하는 것과 비슷한 맥락으로, 처음에 조금 신경 써서 기록해두면 이후 업무 시간을 크게 아낄 수 있습니다.
정리
Git은 코드를 다루는 개발자만의 도구가 아니라, 반복적으로 수정되는 파일을 다루는 모든 실무자에게 유용한 기록 습관입니다. 파일명 뒤에 버전을 붙이는 대신 커밋으로 기록을 남기면, 언제 무엇이 왜 바뀌었는지 명확하게 추적할 수 있고 문제가 생겼을 때도 안전하게 이전 상태로 되돌릴 수 있습니다. 비전공 실무자가 자동화 스크립트나 반복 문서 작업을 시작했다면, 코딩 문법보다 먼저 Git으로 변경 이력을 관리하는 습관을 들여보는 것을 권합니다. 픽셀앤코드는 양주 지역 중소기업과 공공기관 실무자를 대상으로 이러한 코딩·자동화 입문 교육을 진행하고 있으며, 실제 업무 파일을 예제로 활용해 도구 사용법뿐 아니라 유지보수 습관까지 함께 안내하고 있습니다.