@@ -7,6 +7,7 @@ package migrations
7
7
8
8
import (
9
9
"context"
10
+ "errors"
10
11
"fmt"
11
12
"io"
12
13
"net/url"
@@ -247,7 +248,6 @@ func (g *GiteaLocalUploader) CreateReleases(releases ...*base.Release) error {
247
248
LowerTagName : strings .ToLower (release .TagName ),
248
249
Target : release .TargetCommitish ,
249
250
Title : release .Name ,
250
- Sha1 : release .TargetCommitish ,
251
251
Note : release .Body ,
252
252
IsDraft : release .Draft ,
253
253
IsPrerelease : release .Prerelease ,
@@ -276,15 +276,18 @@ func (g *GiteaLocalUploader) CreateReleases(releases ...*base.Release) error {
276
276
rel .OriginalAuthorID = release .PublisherID
277
277
}
278
278
279
- // calc NumCommits if no draft
280
- if ! release . Draft {
279
+ // calc NumCommits if possible
280
+ if rel . TagName != "" {
281
281
commit , err := g .gitRepo .GetTagCommit (rel .TagName )
282
- if err != nil {
283
- return fmt .Errorf ("GetTagCommit[%v]: %v" , rel .TagName , err )
284
- }
285
- rel .NumCommits , err = commit .CommitsCount ()
286
- if err != nil {
287
- return fmt .Errorf ("CommitsCount: %v" , err )
282
+ if ! errors .Is (err , git.ErrNotExist {}) {
283
+ if err != nil {
284
+ return fmt .Errorf ("GetTagCommit[%v]: %v" , rel .TagName , err )
285
+ }
286
+ rel .Sha1 = commit .ID .String ()
287
+ rel .NumCommits , err = commit .CommitsCount ()
288
+ if err != nil {
289
+ return fmt .Errorf ("CommitsCount: %v" , err )
290
+ }
288
291
}
289
292
}
290
293
0 commit comments