There as a git extension called "git lfs", which stands for "Large File Storage". It is designed specifically to aid with synchronizing large binary files. See https://git-lfs.github.com/
After installing git lfs, the typical workflow is:
git lfs track "*.bin"
git add .gitattributes
git add file.bin
git commit -m "Add a binary file: file.bin"
The first and second lines will cause files ending with '.bin' to be handled by git lfs instead of by git. *.bin files can then be added, committed, and pushed as in the 3rd, 4th, and 5th lines.