Rollback - Revert or Reset

What’s the best way to undo changes? Revert or Reset? Suppose I have an error on the live system. I could do a “git revert head” on the developer server (DEV) and comitten it back to live? Is this a good way?