0
0
mirror of https://github.com/go-gitea/gitea.git synced 2026-04-04 12:26:12 +02:00

fix moving repos to a different subgroup

This commit is contained in:
☙◦ The Tablet ❀ GamerGirlandCo ◦❧ 2025-11-23 18:08:36 -05:00
parent 1e2c2dc058
commit c2fc002002
No known key found for this signature in database
GPG Key ID: 924A5F6AF051E87C

View File

@ -7,6 +7,8 @@ import (
"context"
"errors"
"fmt"
"os"
"path/filepath"
"strings"
"code.gitea.io/gitea/models/db"
@ -16,6 +18,7 @@ import (
user_model "code.gitea.io/gitea/models/user"
"code.gitea.io/gitea/modules/gitrepo"
"code.gitea.io/gitea/modules/log"
"code.gitea.io/gitea/modules/setting"
"code.gitea.io/gitea/modules/util"
)
@ -137,6 +140,15 @@ func MoveGroupItem(ctx context.Context, opts MoveGroupOptions, doer *user_model.
opts.NewPos = int(repoCount)
}
if repo.GroupID != opts.NewParent || repo.GroupSortOrder != opts.NewPos {
ndir := filepath.Dir(filepath.Join(setting.RepoRootPath, filepath.FromSlash(repo_model.RelativePath(repo.OwnerName, repo.Name, opts.NewParent))))
_, err = os.Stat(ndir)
if err != nil {
if errors.Is(err, os.ErrNotExist) {
_ = os.MkdirAll(ndir, 0o755)
} else {
return err
}
}
if err = gitrepo.RenameRepository(ctx, repo, repo_model.StorageRepo(repo_model.RelativePath(repo.OwnerName, repo.Name, opts.NewParent))); err != nil {
return err
}