배포 직전 '포맷만 살짝'이 prod 버그를 숨기기도 합니다. 코드 포매터와 압축기를 CI 전 고정 루틴으로 묶어 산출물 품질을 유지하는 개발 팁입니다.
배포 전 5분 루틴
| 단계 | 도구 | 목적 |
|---|---|---|
| 1 Format | code-tool | diff 가독 |
| 2 Lint | (프로젝트) | 규칙 |
| 3 Minify | code-minifier | JS/CSS size |
| 4 Diff review | git | 의도치 않은 변경 |
| 5 Deploy | — | staging first |
팀 규칙
- main에는 포맷 커밋만 별도 PR
- minify는 staging 검증 후 prod
- source map은 내부만 보관
릴리즈 노트에 minify 전후 KB를 한 줄 적으면 성능 회고에 도움이 됩니다.
팁: 포매터 버전을 lockfile에 고정하세요. Prettier 2→3이 팀 전체 diff 지옥을 만듭니다.
CI 스크립트 예시
npm run format && npm run lint && npm run build && npm run minify — minify는 build artifact에만 적용하고 소스 repo에는 minify 파일을 커밋하지 않습니다.
롤백
minify 후 staging smoke test 실패 시, 이전 minify bundle tag로 instant rollback. prod에서 첫 deploy에 minify를 새로 도입하지 마세요.
onboarding hook
git pre-commit에 format만 걸고, minify는 CI only — 로컬 commit 속도와 prod quality의 균형입니다. 신규 dev 첫날 README에 이 5분 routine 링크를 넣으세요.
release tag message에 'minified bundle sha256' 한 줄을 넣으면, prod incident 시 어느 artifact인지 instant trace됩니다.
hotfix branch에도 format-only commit을 섞지 말고, minify artifact는 CI rebuild from tagged commit only — audit trail 단순화.
dependency major upgrade week에는 minify skip flag를 CI env로 두고 functional deploy first, optimize second strategy.
new hire first deploy shadow: senior runs 5min routine aloud — muscle memory faster than wiki read.