Previously, we load all releases of a repository which could hurt
performance when the repository has a lot of releases.
Now we're able to only load releases in current page view we need
to show by matching with 'tag_name'.
* Fix#3315: Release dont use tag creation date
* Simplify code and apply gofmt
* remove useless block (ctx.Repo.GitRepo.GetTag) on EditReleasePost
* apply gofmt on modified files
Since the release struct is initialized with the current `HEAD` of the
current `release.Target` the commit id has to be updated if the tag
commit already exists. Otherwise the linked commit on the release page
will target the current `HEAD` at release time.