Czy kiedykolwiek sprawdzałeś rozmiar swoich lokalnych projektów Git i odkryłeś, że repozytorium ma 15 GB, mimo że rzeczywisty kod źródłowy ma tylko 200 MB? Problem leży w ukrytym katalogu .git/.

Git przechowuje każdą wersję każdego pliku, jaki kiedykolwiek zatwierdzono. Gdy przerwy w sieci przerywają git fetch lub git clone, Git często pozostawia po sobie ogromne, osierocone pliki pakietów o nazwach tmp_pack_* i tmp_idx_* w pliku .git/objects/pack/, których standardowe polecenia Git nigdy nie usuwają.

Jak kompaktować repozytorium Git

Aby przepakować luźne obiekty, wyeliminować nieosiągalne zatwierdzenia i skompresować historię Git, przejdź do katalogu głównego repozytorium i uruchom:

git count-objects -v (aby zobaczyć bieżące wzdęcia)
git gc --prune=now --aggressive (aby agresywnie kompresować)

Czyszczenie osieroconych plików tmp_pack

Standard git gc NIE usuwa tymczasowych plików pakietów utworzonych podczas nieudanych operacji. Funkcja Fast Sweep poziomu 1 programu MagicMacCleaner specjalnie wyszukuje pliki tmp_pack_* starsze niż godzinę we wszystkich obszarach roboczych projektu i bezpiecznie je czyści.

Przebieg pracy dla programistów mobilnych: zwalnianie miejsca na testowych iPhone'ach

Podczas gdy czyszczenie pamięci podręcznej Xcode, środowisk wykonawczych symulatora i kontenerów kompilacji zwalnia istotne miejsce na komputerze Mac, fizyczne urządzenia testowe z systemem iOS szybko zapychają się kompilacjami testowymi, artefaktami awarii, nagraniami ekranu diagnostycznego i zrzutami ekranu kontroli jakości. Utrzymywanie oszczędnego sprzętu do testów fizycznych jest niezbędne do szybkiego debugowania na urządzeniu i niezawodnego wdrażania.

  • Clearly Smart Storage Cleaner: Kompresuje nagrania ekranu raportów o błędach obciążających gigabajty, wykrywa zduplikowane nośniki testowe i porządkuje nieuporządkowane kontakty na iPhone'ach programistycznych i osobistych.
  • Swipe Photo Cleaner: Szybko przeglądaj i usuwaj setki zrzutów ekranu z testów interfejsu użytkownika oraz serii demonstracji za pomocą łatwych gestów przesuwania w celu usunięcia.

Wskazówka dla programistów ekosystemu Apple: optymalizacja urządzenia testowego

Mało miejsca na podłączonych urządzeniach iOS może powodować przekroczenie limitu czasu wdrażania bezprzewodowego Xcode i błędy debugowania LLDB. Regularne czyszczenie multimediów na urządzeniu zapobiega błędom wdrażania tajemniczych kompilacji.