Skip to content

Commit 31cd865

Browse files
committed
Improvements
1 parent 34afc8e commit 31cd865

File tree

6 files changed

+27
-28
lines changed

6 files changed

+27
-28
lines changed

models/repo/repo.go

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -992,11 +992,3 @@ func UpdateRepositoryOwnerName(ctx context.Context, oldUserName, newUserName str
992992
}
993993
return nil
994994
}
995-
996-
func UpdateRepositoryForksNum(ctx context.Context, repoID int64) error {
997-
// Update the forks count of the repository
998-
if _, err := db.GetEngine(ctx).Exec("UPDATE `repository` SET num_forks = (SELECT COUNT(*) FROM `repository` WHERE fork_id = ?) WHERE id = ?", repoID, repoID); err != nil {
999-
return fmt.Errorf("update repository forks num: %w", err)
1000-
}
1001-
return nil
1002-
}

services/repository/adopt.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -201,6 +201,10 @@ func adoptRepository(ctx context.Context, repo *repo_model.Repository, defaultBr
201201
return fmt.Errorf("UpdateRepositoryCols: %w", err)
202202
}
203203

204+
if err = repo_module.UpdateRepoSize(ctx, repo); err != nil {
205+
log.Error("Failed to update size for repository: %v", err)
206+
}
207+
204208
return nil
205209
}
206210

services/repository/create.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -195,6 +195,10 @@ func initRepository(ctx context.Context, u *user_model.User, repo *repo_model.Re
195195
return fmt.Errorf("updateRepository: %w", err)
196196
}
197197

198+
if err = repo_module.UpdateRepoSize(ctx, repo); err != nil {
199+
log.Error("Failed to update size for repository: %v", err)
200+
}
201+
198202
return nil
199203
}
200204

services/repository/fork.go

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -224,14 +224,17 @@ func ConvertForkToNormalRepository(ctx context.Context, repo *repo_model.Reposit
224224
return err
225225
}
226226

227-
parentRepoID := repo.ForkID
228227
repo.IsFork = false
229228
repo.ForkID = 0
230229
if err := repo_model.UpdateRepositoryColsNoAutoTime(ctx, repo, "is_fork", "fork_id"); err != nil {
231230
return err
232231
}
233232

234-
return repo_model.UpdateRepositoryForksNum(ctx, parentRepoID)
233+
if err = repo_module.UpdateRepoSize(ctx, repo); err != nil {
234+
log.Error("Failed to update size for repository: %v", err)
235+
}
236+
237+
return nil
235238
})
236239
}
237240

services/repository/generate.go

Lines changed: 10 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -255,43 +255,35 @@ func generateRepoCommit(ctx context.Context, repo, templateRepo, generateRepo *r
255255
return initRepoCommit(ctx, tmpDir, repo, repo.Owner, defaultBranch)
256256
}
257257

258-
func generateGitContent(ctx context.Context, repo, templateRepo, generateRepo *repo_model.Repository) (err error) {
259-
tmpDir, cleanup, err := setting.AppDataTempDir("git-repo-content").MkdirTempRandom("gitea-" + repo.Name)
258+
// GenerateGitContent generates git content from a template repository
259+
func GenerateGitContent(ctx context.Context, templateRepo, generateRepo *repo_model.Repository) (err error) {
260+
tmpDir, cleanup, err := setting.AppDataTempDir("git-repo-content").MkdirTempRandom("gitea-" + generateRepo.Name)
260261
if err != nil {
261-
return fmt.Errorf("failed to create temp dir for repository %s: %w", repo.FullName(), err)
262+
return fmt.Errorf("failed to create temp dir for repository %s: %w", generateRepo.FullName(), err)
262263
}
263264
defer cleanup()
264265

265-
if err = generateRepoCommit(ctx, repo, templateRepo, generateRepo, tmpDir); err != nil {
266+
if err = generateRepoCommit(ctx, generateRepo, templateRepo, generateRepo, tmpDir); err != nil {
266267
return fmt.Errorf("generateRepoCommit: %w", err)
267268
}
268269

269270
// re-fetch repo
270-
if repo, err = repo_model.GetRepositoryByID(ctx, repo.ID); err != nil {
271+
if generateRepo, err = repo_model.GetRepositoryByID(ctx, generateRepo.ID); err != nil {
271272
return fmt.Errorf("getRepositoryByID: %w", err)
272273
}
273274

274275
// if there was no default branch supplied when generating the repo, use the default one from the template
275-
if strings.TrimSpace(repo.DefaultBranch) == "" {
276-
repo.DefaultBranch = templateRepo.DefaultBranch
276+
if strings.TrimSpace(generateRepo.DefaultBranch) == "" {
277+
generateRepo.DefaultBranch = templateRepo.DefaultBranch
277278
}
278279

279-
if err = gitrepo.SetDefaultBranch(ctx, repo, repo.DefaultBranch); err != nil {
280+
if err = gitrepo.SetDefaultBranch(ctx, generateRepo, generateRepo.DefaultBranch); err != nil {
280281
return fmt.Errorf("setDefaultBranch: %w", err)
281282
}
282-
if err = repo_model.UpdateRepositoryColsNoAutoTime(ctx, repo, "default_branch"); err != nil {
283+
if err = repo_model.UpdateRepositoryColsNoAutoTime(ctx, generateRepo, "default_branch"); err != nil {
283284
return fmt.Errorf("updateRepository: %w", err)
284285
}
285286

286-
return nil
287-
}
288-
289-
// GenerateGitContent generates git content from a template repository
290-
func GenerateGitContent(ctx context.Context, templateRepo, generateRepo *repo_model.Repository) error {
291-
if err := generateGitContent(ctx, generateRepo, templateRepo, generateRepo); err != nil {
292-
return err
293-
}
294-
295287
if err := repo_module.UpdateRepoSize(ctx, generateRepo); err != nil {
296288
return fmt.Errorf("failed to update size for repository: %w", err)
297289
}

services/repository/migrate.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -224,6 +224,10 @@ func MigrateRepositoryGitData(ctx context.Context, u *user_model.User,
224224
return nil, err
225225
}
226226

227+
if err = repo_module.UpdateRepoSize(ctx, repo); err != nil {
228+
log.Error("Failed to update size for repository: %v", err)
229+
}
230+
227231
// this is necessary for sync local tags from remote
228232
configName := fmt.Sprintf("remote.%s.fetch", mirrorModel.GetRemoteName())
229233
if stdout, _, err := git.NewCommand("config").

0 commit comments

Comments
 (0)