Your question depends on what you mean by revision(commit)
If you mean "reference" (e.g. tag or branch) then you can use git-ls-remote to check if a repository has it without downloading it.
If you mean "commit id" (e.g. SHA) then it depends if that commit is head of a current reference in the remote repository. If so then 'git ls-remote --heads --tags' will show the SHAs of the current heads, for example using the command line:
$ git ls-remote --heads --tags origin
From git@git.company.com:proj/path
05f1351c4d2aef79e0f52ef32868f5f56e4bf264 refs/heads/dev
2e5df15c40441428c8c0a622bfd8c59d124fc9c7 refs/heads/master
05e1351f4d2aef79e0f522f33868f5f56e4bf264 refs/heads/prod
05e1351f4d2aef79e0f522f33868f5f56e4bf264 refs/heads/stage
05e1351f4d2aef79e0f522f33868f5f56e4bf264 refs/heads/test
If however that SHA is not at the head of a reference (i.e. is an ancestor), then you would need to download (clone and/or fetch as needed). See this discussions in running git-merge on a remote for more background.