Love this question and it's a question I keep asking myself every time I start a new project and want to put all this in a git repository.
As a rule of thumb I try to only have code related files in my repo: html, css, js, script, config and whatever language I'm using for my backend.
But when it comes to API key and config content, that can and will probably change when deploying so I tend to have those values stored somewhere and replaced whenever I want, may it be when building, launching or deploying. I have been doing c# lately and we use octopus for this matter.
For binary files, my opinion would be never put them in your repo, mainly because I like my repos to be light and easy to clone. Trying to use a CDN to have your images and large files stored somewhere you don't have to worry when you deploy can be a plus and it's the solution I would prefer for web development.
For team related documents and documentation I would have a stronger opinion and say DO NOT use your repo for this. And the main reason for this would be that non technical people would want to access and use those. So Google Drive or Dropbox seem to be a good fit for those types of files.
Hope this helps a bit :)
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.