From 356b707dde00f61f806c8a27879830a1d9b5b895 Mon Sep 17 00:00:00 2001 From: Lunny Xiao <xiaolunwen@gmail.com> Date: Tue, 25 Mar 2025 00:20:08 -0700 Subject: [PATCH] Git client will follow 301 but 307 (#34005) Fix #28460 --------- Co-authored-by: wxiaoguang <wxiaoguang@gmail.com> --- services/context/repo.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/services/context/repo.go b/services/context/repo.go index 6eccd1312a..a083c557e6 100644 --- a/services/context/repo.go +++ b/services/context/repo.go @@ -328,7 +328,9 @@ func RedirectToRepo(ctx *Base, redirectRepoID int64) { if ctx.Req.URL.RawQuery != "" { redirectPath += "?" + ctx.Req.URL.RawQuery } - ctx.Redirect(path.Join(setting.AppSubURL, redirectPath), http.StatusTemporaryRedirect) + // Git client needs a 301 redirect by default to follow the new location + // It's not documentated in git documentation, but it's the behavior of git client + ctx.Redirect(path.Join(setting.AppSubURL, redirectPath), http.StatusMovedPermanently) } func repoAssignment(ctx *Context, repo *repo_model.Repository) {