func createTag(gitRepo *git.Repository, rel *Release) error { // Only actual create when publish. if !rel.IsDraft { if !gitRepo.IsTagExist(rel.TagName) { commit, err := gitRepo.GetCommitOfBranch(rel.Target) if err != nil { return err } if err = gitRepo.CreateTag(rel.TagName, commit.ID.String()); err != nil { return err } } else { commit, err := gitRepo.GetCommitOfTag(rel.TagName) if err != nil { return err } rel.NumCommits, err = commit.CommitsCount() if err != nil { return err } } } return nil }