@@ -7,6 +7,7 @@ package migrations
77
88import (
99 "context"
10+ "errors"
1011 "fmt"
1112 "io"
1213 "os"
@@ -246,7 +247,6 @@ func (g *GiteaLocalUploader) CreateReleases(releases ...*base.Release) error {
246247 LowerTagName : strings .ToLower (release .TagName ),
247248 Target : release .TargetCommitish ,
248249 Title : release .Name ,
249- Sha1 : release .TargetCommitish ,
250250 Note : release .Body ,
251251 IsDraft : release .Draft ,
252252 IsPrerelease : release .Prerelease ,
@@ -275,15 +275,18 @@ func (g *GiteaLocalUploader) CreateReleases(releases ...*base.Release) error {
275275 rel .OriginalAuthorID = release .PublisherID
276276 }
277277
278- // calc NumCommits if no draft
279- if ! release . Draft {
278+ // calc NumCommits if possible
279+ if rel . TagName != "" {
280280 commit , err := g .gitRepo .GetTagCommit (rel .TagName )
281- if err != nil {
282- return fmt .Errorf ("GetTagCommit[%v]: %v" , rel .TagName , err )
283- }
284- rel .NumCommits , err = commit .CommitsCount ()
285- if err != nil {
286- return fmt .Errorf ("CommitsCount: %v" , err )
281+ if ! errors .Is (err , git.ErrNotExist {}) {
282+ if err != nil {
283+ return fmt .Errorf ("GetTagCommit[%v]: %v" , rel .TagName , err )
284+ }
285+ rel .Sha1 = commit .ID .String ()
286+ rel .NumCommits , err = commit .CommitsCount ()
287+ if err != nil {
288+ return fmt .Errorf ("CommitsCount: %v" , err )
289+ }
287290 }
288291 }
289292
0 commit comments