Recently a few people on our team started running low on disk space — always a precious commodity with MacBooks. Chatting in our #random Slack channel, we swapped stories and came up with a few lesser known tricks to reclaim this space.

Our team was able to collectively save almost 220 GB using these 3 methods, so we thought it would be worth sharing. Of course, your mileage may vary.

Clear document versioning

Recent releases of macOS include a Versioning feature which stores past copies of saved files, in case you ever want to revert to a previous version. This is handy, but for graphics-heavy programs like Sketch, it can also eat up a lot of disk space.

You’ll find these files in a hidden folder at the top level of your Macintosh HD (/.DocumentRevisions-V100).

To see how much space this folder is currently using, run the following command:

$ sudo du -sh /.DocumentRevisions-V100

To clear this folder (and all past document versions), run:

$ sudo rm -rf /.DocumentRevisions-V100

The folder will be safely rebuilt by the OS, but you can also disable this feature entirely if you prefer.

“I cleared almost 200 GB of disk space by cleaning that folder.” -Justin

Cleanup Homebrew

If you use the popular Homebrew package manager, note that it does not uninstall old package versions by default. Over time you will accumulate old versions.

To remove out of date packages, simply run:

$ brew cleanup

“Saved me 14 GB a few weeks ago.” —Ethan

Remove unused NPM packages

Node modules installed by NPM can add up over time. To see how much space your various node_modules folders are taking up, you can run:

$ find . -name "node_modules" -type d -prune \
    -exec du -sh "{}" + | gsort -hr

Once located, you can delete or prune any unused folders.

Or if you are daring, you can remove all node modules in one fell swoop (use at your own risk):

$ find . -name "node_modules" -type d -prune \
    -exec rm -rf "{}" +

“Reclaimed ~5 gigs of space.” —Adrian


Have other tips to add? Let us know on Twitter @oakstudios.


Recent posts