If a tag specified in tagname doesn't exist, the release is created from ref and tagged with tagname. It can be a commit SHA, another tag name, or a branch name.