
ChatGPT에게 GitHub 편집을 맡겼다가 Netlify 크레딧을 낭비할 뻔한 이야기
요약
ChatGPT를 통해 GitHub 파일을 직접 편집할 때 발생할 수 있는 Netlify 자동 배포 및 크레딧 낭비 문제를 다룹니다. GitHub 커밋이 Netlify의 자동 빌드를 트리거하여 불필요한 비용을 발생시킬 수 있음을 경고합니다.
핵심 포인트
- ChatGPT가 GitHub에 직접 커밋하면 Netlify 자동 배포가 실행될 수 있음
- 문서 수정 등 사소한 변경사항도 빌드 크레딧을 소비할 위험이 있음
- ChatGPT에게는 코드 전체 대신 Diff나 완성된 코드만 받는 것이 안전함
- 로컬 환경에서 npm run build를 통해 빌드 성공 여부를 먼저 확인 권장
개인 개발로, Next.js + Supabase + Netlify 구성으로 학습 앱을 만들고 있습니다.
최근에는 ChatGPT를 사용하여, 사양서 작성, 화면 추가, CSV 설계, DB 설계 등을 상당히 진행하고 있습니다.
그 과정에서, 조금 아찔했던 일이 있었습니다.
그것은,
ChatGPT에게 GitHub 상의 파일을 직접 편집하게 했더니, Netlify의 자동 배포(Automatic Deploy)가 매번 실행되었을지도 모른다
라는 이야기입니다.
개발 중인 앱에서는, GitHub 리포지토리(Repository)와 Netlify를 연동하고 있습니다.
통상적으로는,
GitHub에 push
↓
Netlify가 자동 빌드(Build)
...
라는 흐름입니다.
이것은 편리합니다만, ChatGPT에게 GitHub 커넥터(Connector)를 경유하여 파일 편집을 의뢰했기 때문에, ChatGPT가 파일을 생성·갱신할 때마다 GitHub로 커밋(Commit)되고 있었습니다.
예를 들어, 다음과 같은 작업입니다.
- docs의 사양서를 갱신
- 화면설계.md를 갱신
- DB설계.md를 갱신
...
이 시점에서는, 저는 "ChatGPT가 GitHub를 편집해 주니 편리하네" 정도로만 생각하고 있었습니다.
하지만 나중에 깨달았습니다.
GitHub에 커밋된다는 것은, Netlify의 자동 배포가 활성화되어 있다면, 그때마다 빌드가 실행될 가능성이 있다.
즉, 아직 동작 확인도 하지 않은 도중의 변경사항으로, Netlify의 빌드 시간이나 크레딧(Credit)을 소비했을지도 모릅니다.
문제는, ChatGPT를 사용한 것이 아닙니다.
문제였던 것은,
작업 도중의 작은 변경
↓
그대로 GitHub로 커밋
...
이라는 흐름을 의식하지 못했다는 점입니다.
특히 개인 개발에서는, 다음과 같은 작업이 많습니다.
- 사양서를 조금 수정
- README를 조금 수정
- 화면을 임시로 제작
...
이러한 작업은, 로컬(Local)에서 모아서 확인한 뒤 push하면 충분합니다.
그런데도, 파일 1개를 변경할 때마다 Netlify가 반응한다면, 상당히 아깝습니다.
정리하자면, ChatGPT로 상담하거나, 코드를 작성해 달라고 하는 것만으로는 Netlify의 크레딧을 소비하지 않습니다.
소비될 가능성이 있는 것은, 다음의 흐름입니다.
ChatGPT가 GitHub에 직접 커밋
↓
GitHub 리포지토리가 갱신됨
...
즉, 원인은 ChatGPT가 아니라, GitHub 연동과 Netlify 자동 배포의 조합입니다.
이번 반성을 통해, 앞으로는 다음과 같은 운용 방식으로 바꾸기로 했습니다.
1. ChatGPT에게 GitHub를 직접 편집하게 하지 않는다
2. 로컬의 작업 디렉토리를 전제로 한다
3. ChatGPT에게는 차이점(Diff)이나 완성된 코드만 받는다
...
로컬의 작업 장소는 다음과 같습니다.
/Users/사용자명/Documents/GitHub/프로젝트명
이 흐름으로 하면, ChatGPT와의 작업 중에 Netlify가 멋대로 움직이는 일은 없습니다.
앞으로는 push 전에, 최소한 이 2가지를 실행합니다.
pm run lint
pm run build
npm run lint는, 코드의 작성 방식이나 규칙 위반을 체크하기 위한 커맨드(Command)입니다.
npm run build는, Next.js 앱이 프로덕션(Production)용으로 빌드될 수 있는지 확인하기 위한 커맨드입니다.
로컬에서 이것을 실행해도, Netlify의 크레딧은 소비하지 않습니다.
로컬에서 npm run build
→ 자신의 PC에서 빌드 확인
→ Netlify 크레딧은 사용하지 않음
반면, GitHub에 push하면 Netlify 측에서 빌드가 실행될 가능성이 있습니다.
git push
→ Netlify가 자동 빌드
→ Netlify 크레딧을 사용할 가능성 있음
그러므로, push 전에 로컬에서 확인하는 것이 중요합니다.
실제로 빌드가 실행되었는지 확인하려면, Netlify의 관리 화면에서 확인합니다.
Netlify
↓
대상 사이트
...
여기에, GitHub 커밋 타이밍에 deploy가 나열되어 있다면, 자동 빌드가 작동했을 가능성이 있습니다.
향후 대책은 다음과 같습니다.
ChatGPT에게는, 로컬에 붙여넣을 수 있는 코드나 차이점(Diff)만 내놓도록 합니다.
문서 수정이나 임시 구현 단계에서는, Netlify에 배포할 필요가 없습니다.
npm run lint
npm run build
이 두 가지가 통과된 후에 push합니다.
작업이 빈번한 시기에는 Netlify의 자동 배포 (Automatic Deployment) 설정을 재검토하는 것도 방법입니다.
이번 배움은 심플합니다.
AI 개발은 빠르지만, CI/CD도 함께 빠르게 돌아가 버린다.
ChatGPT에게 작업을 맡기면, 사양서나 코드의 변경이 계속해서 진행됩니다.
하지만 GitHub와 Netlify를 연동하고 있는 경우, 그 변경 사항이 그대로 배포 (Deployment) 플로우에 올라가 버릴 수 있습니다.
AI로 인해 개발 속도가 올라갈수록, 다음과 같은 운영 규칙이 중요해진다고 느꼈습니다.
- 어디까지를 AI에게 맡길 것인가
- 언제 GitHub에 반영할 것인가
- 언제 Netlify에 배포할 것인가
...
ChatGPT에게 GitHub 편집을 맡기는 것은 편리합니다.
단, Netlify 등과 자동 배포가 연동되어 있는 경우에는 주의가 필요합니다.
이번 결론은 이것입니다.
ChatGPT로 작업한다
↓
로컬 (Local)에서 확인한다
...
개인 개발에서는 무료 티어(Free tier)나 크레딧을 소중히 사용하고 싶으므로, 앞으로는 이 흐름으로 진행해 나갈 것입니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Qiita AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기