Like it says, the file storage/app/public/.gitignore on your server is different than the same file in your master branch (it contains changes that have not been commited). Have you made any changes to it directly on the server?
If you wish to keep the version on the server, just commit it and push like you would normally do. If you wish to ignore the changes and just allow it to be overwritten, you can do
git checkout storage/app/public/.gitignore on the server to revert the file to its original state. After this, you should be able to deploy (git pull) normally.
Tip: git diff will show you the differences between the two versions of the file.