git rev-parse <tag>^{commit} resolves to the commit that the tag points to.
repo.rev_parse("<tag>^{commit}") says ValueError: Could not accommodate requested object type 'commit', got tag
It should instead return TagObject.object (at least if that is a commit object).