diff --git a/models/repo/release.go b/models/repo/release.go
index f7b24044b9..c8dd7fbc7a 100644
--- a/models/repo/release.go
+++ b/models/repo/release.go
@@ -79,7 +79,7 @@ type Release struct {
 	RenderedNote     string             `xorm:"-"`
 	IsDraft          bool               `xorm:"NOT NULL DEFAULT false"`
 	IsPrerelease     bool               `xorm:"NOT NULL DEFAULT false"`
-	IsTag            bool               `xorm:"NOT NULL DEFAULT false"`
+	IsTag            bool               `xorm:"NOT NULL DEFAULT false"` // will be true only if the record is a tag and has no related releases
 	Attachments      []*Attachment      `xorm:"-"`
 	CreatedUnix      timeutil.TimeStamp `xorm:"INDEX"`
 }
diff --git a/templates/repo/release/list.tmpl b/templates/repo/release/list.tmpl
index 9bc87fa80b..12aaa0bd71 100644
--- a/templates/repo/release/list.tmpl
+++ b/templates/repo/release/list.tmpl
@@ -93,7 +93,7 @@
 									{{end}}
 								</h4>
 								<div class="gt-df gt-ac">
-									{{if $.CanCreateRelease}}
+									{{if and $.CanCreateRelease (not .IsTag)}}
 										<a class="muted gt-ml-3 gt-df gt-ac" data-tooltip-content="{{$.locale.Tr "repo.release.edit"}}" href="{{$.RepoLink}}/releases/edit/{{.TagName | PathEscapeSegments}}" rel="nofollow">
 											{{svg "octicon-pencil"}}
 										</a>