Those commands will remove unreferenced objects and recompress the repository. For me that worked great and for example a 4 GB repository shrunk down to 600 MB. That saves a lot of disk space here. Try at your own risk. Remote repositories may need extra work to upload the new state.
git reflog expire --expire=now --all
git fsck --full --unreachable
git repack -A -d
git gc --aggressive --prune=now