From 63bd1b92037c5deb1bb13b0753855a689b9450bc Mon Sep 17 00:00:00 2001 From: Harshit Bansal Date: Tue, 1 Jan 2019 04:30:54 +0530 Subject: mirror: Delete tags in mirror which are removed for original repo. (#5609) This bug was being caused by an error in the logic in `release.go`. Credit to @yasuokav for tracing the root of the issue. Fixes: #5192. --- models/release.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'models/release.go') diff --git a/models/release.go b/models/release.go index c18e152293..c1c8b933d0 100644 --- a/models/release.go +++ b/models/release.go @@ -479,10 +479,10 @@ func SyncReleasesWithTags(repo *Repository, gitRepo *git.Repository) error { continue } commitID, err := gitRepo.GetTagCommitID(rel.TagName) - if err != nil { + if err != nil && !git.IsErrNotExist(err) { return fmt.Errorf("GetTagCommitID: %v", err) } - if !gitRepo.IsTagExist(rel.TagName) || commitID != rel.Sha1 { + if git.IsErrNotExist(err) || commitID != rel.Sha1 { if err := pushUpdateDeleteTag(repo, gitRepo, rel.TagName); err != nil { return fmt.Errorf("pushUpdateDeleteTag: %v", err) } -- cgit v1.2.3