Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 |
Tags
- CSS
- Debugging
- Git
- NextJS
- aws
- JavaScript
- API
- Security
- version-control
- architecture
- observability
- Microservices
- Infra
- DevOps
- Performance
- react
- Kubernetes
- frontend
- reliability
- CI
- Operations
- HTTP
- PostgreSQL
- Ops
- auth
- database
- web
- SRE
- backend
- 성능
Archives
- Today
- Total
고민보단 실천을
git push 안전하게 쓰는 법: --force-with-lease로 강제 푸시 사고 막기 본문
git push 안전하게 쓰는 법: --force-with-lease로 강제 푸시 사고 막기
git push는 로컬 이력을 원격에 공유하는 마지막 단계다. 특히 rebase 후 강제 푸시는 팀 이력을 덮어쓸 수 있어 안전 장치가 필요하다.

기본 사용법
git push origin feature/payment
git push --set-upstream origin feature/payment자주 쓰는 옵션 4가지
| 항목 | 의미 | 언제 쓰는지(실무 상황) |
|---|---|---|
| --set-upstream | 로컬 브랜치와 원격 추적 연결 | 새 브랜치를 처음 푸시할 때 |
| --force-with-lease | 원격 변경이 없을 때만 강제 푸시 | rebase 후 안전하게 이력을 갱신할 때 |
| --tags | 태그까지 함께 전송 | 릴리스 태그를 배포 파이프라인에 반영할 때 |
| --dry-run | 실제 전송 없이 사전 확인 | 보호 브랜치 푸시 전 리스크 점검 시 |
문제 상황
상황: --force로 팀원이 올린 커밋이 사라지는 사고가 발생한다.
원인: 원격 최신 상태 확인 없이 강제 푸시했다.
해결: 강제 갱신이 필요하면 --force-with-lease를 사용하고 push 전 fetch로 원격 상태를 확인한다.
예방 팁: protected branch 규칙과 리뷰 승인 정책을 함께 적용한다.
참고/출처
공식 문서: git-push manual
공식 문서: git-config (push.default)
신뢰 자료: Atlassian Blog - force-with-lease
'GIT' 카테고리의 다른 글
| git checkout 되돌리기와 브랜치 이동: 파일 복구까지 안전하게 쓰는 법 (0) | 2026.02.19 |
|---|---|
| git diff 리뷰 품질 높이기: 커밋 전 변경 비교와 누락 점검 실무 방법 (0) | 2026.02.19 |
| git log 이력 추적 정복: 커밋 검색과 감사에 유용한 옵션 실무 활용법 (0) | 2026.02.18 |
| git branch 전략 실무: 생성·이름변경·정리까지 안전하게 관리하는 방법 (0) | 2026.02.18 |
| git add 실수 줄이기: -p로 변경사항 선택 스테이징하는 방법과 복구 팁 (0) | 2026.02.18 |
Comments
