Kako osloboditi prostor na programeru Mac

Očistite svoj razvojni okoliš, prljava životinjo!

Javolite softver za čišćenje? PLZ! Uklonite duplikate, pronađite stari OS OS itd. Ali to nikada ne čisti razvojni stroj kao što mogu.

Naravno, za opće održavanje ništa nije bolje od CleanMyMac-a. Ali jednom godišnje, programeri bi trebali proći kroz nekoliko ručnih naredbi, jer automatski čistači neće znati kako se brinuti o stroju za programere.

Prije nego što započnemo, pogledajmo s koliko slobodnog prostora započinjete:

Moja prijavljuje 132,2 GB prije čišćenja. Vrijeme je za početak!

Korisnici Mac Homebrewa

Ovaj obično obrije stotine megabajta podataka. Ažurirajte, nadogradite i zatim očistite datoteke koje nećete koristiti.

Ažuriranje, a zatim uklonite stare formule i njihove mape:

brew update && brew upgrade && brew cleanup

Možda ste koristili brew pruneu prošlosti, ali to je zastarjelo. Čišćenje to rješava za vas!

Opće održavanje piva

Brew je kompliciran sustav i nitko ga ne zna bolje od održavatelja. Tako možete trčati brew doctori dobiti neke dodatne poslove za koje biste se mogli pobrinuti da bi se pravilno odvijalo.

Korisnici Gita

Git je sjajan, ali nije teško ostaviti gomilu spojenih grana na vašem lokalnom stroju! Te grane više nisu korisne, a ponekad stvaraju sukobe u imenovanju budućih grana.

Ovom naredbom možete ukloniti sve spojene grane iz jednog projekta:

git branch --merged master | grep -v "\* master" | xargs -n 1 git branch -d

WOW, kakva zalogaj za samo jedan projekt! Pogoršavajmo. ?

Ovaj će se kôd CD-om pridružiti u svim mapama u trenutnom radnom direktoriju, a zatim pokrenite naredbu za čišćenje spojenih grana za svaku!

for d in */; do cd $d; echo WORKING ON $d; git branch --merged master | grep -v "\* master" | xargs -n 1 git branch -d; cd ..; done

JavaScript programeri

Izbrišite STARE `node_module` ugrađene u projekte

Sljedeća naredba pronalazi sve node_modulesmape starije od 120 dana i uklanja ih. To znači da ćete morati npm iili yarnponovno u tim starijim projektima. Ovo je obično veliko čišćenje!

Uklanja sve node_modulesmape starije od 4 mjeseca:

find . -name "node_modules" -type d -mtime +120 | xargs rm -rf

Ako se osjećate prilično agresivno, možete jednostavno ukloniti SVE node_modulesmape i ponovno instalirati po potrebi uklanjanjem mtimezastavice.

Uklanja sve node_modulesmape:

find . -name "node_modules" -type d | xargs rm -rf

Uklonite stare verzije čvora

Uklonite stare verzije čvora. To se razlikuje ovisno o vašem upravitelju čvorova. Koristim 'n' pa mi je lako. Posavjetujte se s deinstalacijom za svoj upravitelj verzija.

Koristite n? Navedite sve verzije čvora + vaše instalirane sa, n lsa zatim uklonite sve sa n rm on>. Using nvm?List your installed versions with nvm ls and then remove any with nvm uninstall on>. Using asdf?List your installed versions with asdf list nodejs and then remove any with asdf uninstall nodejs on>.

Ruby Developers

Clean up old versions of Gems with the cleanup command. If you’re worried, you can see the results first with “dryrun”.

gem cleanup --dryrun

Then when you are confident, you can remove the “dryrun” param and run it for real.

gem cleanup

Remove old versions of Ruby

This depends specifically on your Ruby version manager. We’ll do two popular versions to help you out.

Using rbenv?List your installed versions with rbenv versions and then remove any with rbenv uninstall on>. Using rvm?List your installed versions with rvm list and then remove any with rvm uninstall on>.

Xcode Developers

Xcode loves to cache things all over your machine, and some of these are hundreds of megs. Time to clean them up, and if you need to rebuild them again, no worries!

Clean up CocoaPod caches:

rm -rf "${HOME}/Library/Caches/CocoaPods"

Delete old Xcode Simulators:

xcrun simctl delete unavailable

Clean up various archives, logs, and derived data folders:

rm -rf ~/Library/Developer/Xcode/Archives rm -rf ~/Library/Developer/Xcode/DerivedData rm -rf ~~/Library/Developer/Xcode/iOS Device Logs/

Check out your connected device info in ~/Library/Developer/Xcode/iOS Device Logs/ and delete anything for old iOS devices you’ve connected.

Docker

You can remove all volumes not used by at least one container. Because… why would you want those?!

This might be huge or it might remove nothing. Worth a run right!?

Remove unused local volumes

docker volume prune

RESULTS?!

Don’t forget to empty your trash and check on how we did!

30 GIGS! pulled off my machine! How about you?

Your success is probably vastly different, but I’d love to know. Comment or tweet at me your results, and any other developer spots you recommend we clean! I’ll be happy to add your advice to the article.

Gant Laborde is Chief Technology Strategist at Infinite Red, published author, adjunct professor, worldwide public speaker, and a mad scientist in training. Clap/follow/tweet or visit him at a conference.

5 Things that Suck about Remote Work

The Pitfalls of Remote Work + Proposed Solutionsshift.infinite.redReact Native vs. Native

Should I learn React Native or Native?shift.infinite.red