Package version implements logic to parse version of Go tags and release branches.
ParseReleaseBranch parses the major-minor version pair from release-branch.goX or release-branch.goX.Y release branch names, and reports whether the release branch name is valid.
For example, "release-branch.go1" is parsed as version 1.0, and "release-branch.go1.2" is parsed as version 1.2.
ParseTag parses the major-minor-patch version triplet from goX, goX.Y, or goX.Y.Z tag names, and reports whether the tag name is valid.
Tags with suffixes like "go1.2beta3" or "go1.2rc1" are currently not supported, and get rejected.
For example, "go1" is parsed as version 1.0.0, "go1.2" is parsed as version 1.2.0, and "go1.2.3" is parsed as version 1.2.3.