Git Clean -fd: How to Remove Untracked Files & Directories
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
개발 툴
대상자
- 소프트웨어 개발자 (특히 Git 워크스페이스 관리 필요성 있는 분야)
- 난이도: 초보자~중급자 (기본 명령어 이해 필요)
핵심 요약
git clean -fd
는 미트래킹 파일/디렉터리를 강제 삭제하는 명령어로,-f
(강제)와-d
(디렉터리 삭제) 플래그가 필수- 인터랙티브 모드(
-i
)로 삭제 대상 선택 가능,git clean -n
으로 드라이 런 검증 후 실행 권장 .gitignore
파일을 통해 미래의 미트래킹 파일 방지 가능
섹션별 세부 요약
1. **기본 사용법**
-f
플래그는 파일 삭제 강제-d
플래그는 디렉터리 삭제- 예시:
git clean -fd
→untracked_file.log
와untracked_dir/
삭제 - 경고: 삭제된 파일은 백업 없이 복구 불가
2. **인터랙티브 모드 활용**
git clean -fd -i
로 선택적 삭제- 명령어:
4: ask each
→ 파일별 삭제 여부 확인2: filter by pattern
→ 특정 패턴으로 필터링
3. **패턴 및 제외 설정**
git clean -f "*.tmp"
→.tmp
확장자 파일만 삭제git clean -f -e "error.log" "*.log"
→error.log
제외하고.log
파일 삭제git clean -fd -e ".env"
→.env
파일은 보호
4. **고급 기능 및 주의사항**
git clean -fdx
→ 무시된 파일도 삭제 (.gitignore
무시)git clean -fdff
→ 무시된 파일 삭제 + 캐시 강제 초기화git clean -n
→ 드라이 런으로 삭제 대상 미리 확인- 백업 전략:
git stash -u
로 변경사항 보존 후git clean -fd
실행
5. **실무 적용 팁**
- 브랜치 전환 전:
git clean -fd
실행 → 미트래킹 파일 충돌 방지 - 빌드/테스트 후:
node_modules/
,.log
파일 삭제 - 워크스페이스 리셋:
git clean -fd
로 임시 파일 정리
결론
git clean -fd
는 워크스페이스 정리에 필수, 드라이 런(-n)으로 미리 확인 후 실행- .gitignore 설정으로 불필요한 파일 생성 방지
- 인터랙티브 모드(
-i
)로 안전하게 삭제 대상 선택, 보안 및 데이터 손실 방지 위해 백업 필수