I think what’s got you confused is that every file you add to an app in the Anvil Editor is already committed to Git. For simplicity, Anvil doesn’t have a concept of “uncommitted files” - everything is a git commit. (The reason your commit history isn’t thousands of commits long is that Anvil does the equivalent of git commit --amend to combine edits that happened close together into a single commit.) You can read more about Anvil’s Git behaviour in our docs.
It sounds like what you’ve done is added fonts and images to your assets (by uploading them to Anvil), then also added a .gitignore file to your assets. This won’t work - .gitignore is a file used by the local Git command-line tools to avoid adding certain files to your repo even though they’re on your local disk. However, Anvil doesn’t have a concept of a “local disk” - everything you upload goes straight into the repo, so there’s nothing for .gitignore to do!
If you want those files to be part of your Anvil app - ie, to be usable when you run your app - they’ll need to be in your git repository! You can always delete them (and “squash” away those commits) later if you don’t want them.