Swift Package Manager 캐시 지워도 될까?
삭제해도 안전자동으로 다시 만들어집니다. Thermo는 바로 삭제합니다.
위치
~/Library/Caches/org.swift.swiftpm~/Library/org.swift.swiftpm/collections.json
무엇인가요
Swift Package Manager가 의존성 패키지의 Git 저장소와 바이너리 아티팩트를 받아 두는 공유 캐시입니다. 명령줄 swift build와 Xcode 모두 패키지를 받을 때 이 캐시를 활용합니다. 패키지 컬렉션 정보도 여기에 저장됩니다.
왜 이렇게 커지나요
패키지 저장소를 Git 이력과 함께 받아 두기 때문에 의존성이 많을수록 커집니다. 버전을 올려도 이전 데이터가 남고, 바이너리 프레임워크를 배포하는 패키지는 하나만으로도 용량이 큽니다.
삭제해도 되나요?
안전합니다. 다음에 패키지를 resolve할 때 다시 받으므로 그때만 시간이 더 걸립니다. 프로젝트의 Package.resolved에 고정된 버전은 그대로 유지됩니다. SwiftPM 공식 방법은 swift package purge-cache입니다.
팁
Xcode에서 패키지 해석이 꼬였다면 File 메뉴의 Packages > Reset Package Caches로 프로젝트 단위 캐시를 초기화하는 방법도 있습니다.
먼저 용량 확인
du -sh "$HOME/Library/Caches/org.swift.swiftpm" "$HOME/Library/org.swift.swiftpm/collections.json" 2>/dev/null도구 자체 명령으로 정리
swift package purge-cache직접 삭제
터미널에서 실행합니다. 삭제는 되돌릴 수 없으니 경로를 먼저 확인하세요.
rm -rf "$HOME/Library/Caches/org.swift.swiftpm"/*
rm -rf "$HOME/Library/org.swift.swiftpm/collections.json"