Handle branch name with prefix in GitHub migration (#20357)
GitHub allows releases with target commitish `refs/heads/BRANCH`, which then causes issues in Gitea after migration. This fix handles cases that a branch already has a prefix. Fixes #20317 Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
This commit is contained in:
parent
44cc684a50
commit
81ea4f95a0
@ -15,6 +15,7 @@ import (
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"code.gitea.io/gitea/modules/git"
|
||||
"code.gitea.io/gitea/modules/log"
|
||||
base "code.gitea.io/gitea/modules/migration"
|
||||
"code.gitea.io/gitea/modules/proxy"
|
||||
@ -307,10 +308,14 @@ func (g *GithubDownloaderV3) GetLabels() ([]*base.Label, error) {
|
||||
}
|
||||
|
||||
func (g *GithubDownloaderV3) convertGithubRelease(rel *github.RepositoryRelease) *base.Release {
|
||||
// GitHub allows commitish to be a reference.
|
||||
// In this case, we need to remove the prefix, i.e. convert "refs/heads/main" to "main".
|
||||
targetCommitish := strings.TrimPrefix(rel.GetTargetCommitish(), git.BranchPrefix)
|
||||
|
||||
r := &base.Release{
|
||||
Name: rel.GetName(),
|
||||
TagName: rel.GetTagName(),
|
||||
TargetCommitish: rel.GetTargetCommitish(),
|
||||
TargetCommitish: targetCommitish,
|
||||
Draft: rel.GetDraft(),
|
||||
Prerelease: rel.GetPrerelease(),
|
||||
Created: rel.GetCreatedAt().Time,
|
||||
|
Loading…
Reference in New Issue
Block a user