Depending on the remote, you may be able to reset its URL to use the read-only Git protocol instead of SSH or HTTPS. E.g., for a project on GitHub, do
git remote set-url <remote> git://github.com/Team/Project.git
where <remote> is commonly origin. git remote -v will give you a list of remotes; those that start with https or have the form <user>@<host>:<path> usually allow pushing.