Swift Package Manager önbelleği güvenle nasıl temizlenir
AskClean Ekibi · Güncellendi 2026-07-31
Geçerli paketin derleme çıktıları için swift package clean, tüm yerel durumunu sıfırlamak için reset, genel depo önbelleği içinse yalnızca swift package purge-cache kullanın. Package.swift ve Package.resolved bağımlılıkları tanımlar; atılabilir önbellek değildir.

SwiftPM birden çok katmana sahiptir
Komut satırı paketi checkout ve ürünleri .build içinde saklarken SwiftPM ortak bir depo önbelleği tutar. Xcode paket ürünlerini projenin DerivedData’sında tutabilir. Sorunu açıklayan en dar katmanı temizleyin.
Komutu kapsamına göre seçin
swift package clean geçerli paketin derleme çıktılarını siler. reset daha geniştir ve yerel durumu yeniden hazırlar. purge-cache birden çok projenin ortak indirmelerini etkiler; sonraki çözümleme ağ ve daha fazla zaman gerektirebilir.
- Değişiklikleri kaydedin, Package.swift ve Package.resolved dosyalarını doğrulayın.
- Kök dizinde swift package clean çalıştırıp yeniden derleyin.
- Yalnızca yerel durum bozuk kalırsa swift package reset kullanın.
- Ortak önbellek sorunu doğrulanırsa swift package purge-cache kullanın.
- Temizleme sonrasında bağımlılıkları ve testleri kontrol edin.
swift package --help çalıştırın; alt komutlar kurulu Swift sürümüne bağlıdır.
Çözümleme dosyalarını koruyun
Package.resolved belirli sürümleri kaydeder. Silmek, izin verilen başka sürümleri seçip temizliği güncellemeye dönüştürebilir. Package.swift, Sources, Tests, eklentiler ve yerel bağımlılıklar kaynak dosyalardır; önbellek gibi silmeyin.
Xcode’u ayrı ele alın
Yalnızca Xcode’da görülen sorun için File > Packages > Reset Package Caches ve Resolve Package Versions’ı deneyin veya o projenin DerivedData’sını silin. Genel temizlemeden önce .build klasörlerini ölçün. AskClean kategoriyi bulur; kapsamı Swift komutları belirler.
SSS
swift package clean neyi siler?
Geçerli paketin derleme çıktılarını; sonraki derleme bunları yeniden oluşturur.
reset ve purge-cache aynı mı?
Hayır. reset geçerli paketi, purge-cache genel depo önbelleğini hedefler.
Package.resolved silinmeli mi?
Normal temizlikte hayır. Yalnızca bilinçli olarak yeni sürüm çözümlemesi istediğinizde silin.
Kaynaklar