diff --git a/routers/repo/setting.go b/routers/repo/setting.go index 865dea9bca..ca222375fb 100644 --- a/routers/repo/setting.go +++ b/routers/repo/setting.go @@ -202,8 +202,8 @@ func SettingsPost(ctx *context.Context, form auth.RepoSettingForm) { address = u.String() - if err := mirror_service.SaveAddress(ctx.Repo.Mirror, address); err != nil { - ctx.ServerError("SaveAddress", err) + if err := mirror_service.UpdateAddress(ctx.Repo.Mirror, address); err != nil { + ctx.ServerError("UpdateAddress", err) return } diff --git a/services/mirror/mirror.go b/services/mirror/mirror.go index da794ea585..5eafdab38d 100644 --- a/services/mirror/mirror.go +++ b/services/mirror/mirror.go @@ -89,8 +89,8 @@ func AddressNoCredentials(m *models.Mirror) string { return u.String() } -// SaveAddress writes new address to Git repository config. -func SaveAddress(m *models.Mirror, addr string) error { +// UpdateAddress writes new address to Git repository and database +func UpdateAddress(m *models.Mirror, addr string) error { repoPath := m.Repo.RepoPath() // Remove old origin _, err := git.NewCommand("remote", "rm", "origin").RunInDir(repoPath) @@ -117,7 +117,9 @@ func SaveAddress(m *models.Mirror, addr string) error { return err } } - return nil + + m.Repo.OriginalURL = addr + return models.UpdateRepositoryCols(m.Repo, "original_url") } // gitShortEmptySha Git short empty SHA