Yes this is an issue. I dont think we can merge binary files. I think we will have to choose one over the other.
About colloborating:
My preferred way is to use forks. Create your-own forks and do stuff there. You can create branches in your forks if you want. When you want to submit your chages, you can submit a pull request. However one ‘problem’ with this method is once you fork-off, you will loose any connection to the original repository. Ie if there are some changes made in the original repo and you need those, simply pulling your fork wont do it. But you can tell the git application to do taht by setting up a special remote called ‘upstream’. Once you set that up, whenever you need changes in the original repo into your fork, you can pull from upstream.
I have tried Atlassian Source Tree for two weeks now and it is excellent. When you start working with forks, things get much easier with a good GUI application.
However, collaborators can also work in single repo without forks. Create their own branches and push it. Ask the admin to merge your branches into master. Every user can merge ofcousre but that will be problem in the long run. So I adivcesomeone should act as a de-facto admin and take care of merging.