mirror of
				https://gitee.com/gitea/gitea
				synced 2025-11-04 16:40:24 +08:00 
			
		
		
		
	Use middleware to open gitRepo (#19559)
This commit is contained in:
		@@ -1014,7 +1014,7 @@ func Routes() *web.Route {
 | 
			
		||||
					m.Group("/{ref}", func() {
 | 
			
		||||
						m.Get("/status", repo.GetCombinedCommitStatusByRef)
 | 
			
		||||
						m.Get("/statuses", repo.GetCommitStatusesByRef)
 | 
			
		||||
					})
 | 
			
		||||
					}, context.ReferencesGitRepo())
 | 
			
		||||
				}, reqRepoReader(unit.TypeCode))
 | 
			
		||||
				m.Group("/git", func() {
 | 
			
		||||
					m.Group("/commits", func() {
 | 
			
		||||
 
 | 
			
		||||
@@ -5,6 +5,7 @@
 | 
			
		||||
package utils
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"fmt"
 | 
			
		||||
	"net/http"
 | 
			
		||||
 | 
			
		||||
	"code.gitea.io/gitea/modules/context"
 | 
			
		||||
@@ -35,12 +36,7 @@ func ResolveRefOrSha(ctx *context.APIContext, ref string) string {
 | 
			
		||||
// GetGitRefs return git references based on filter
 | 
			
		||||
func GetGitRefs(ctx *context.APIContext, filter string) ([]*git.Reference, string, error) {
 | 
			
		||||
	if ctx.Repo.GitRepo == nil {
 | 
			
		||||
		var err error
 | 
			
		||||
		ctx.Repo.GitRepo, err = git.OpenRepository(ctx, ctx.Repo.Repository.RepoPath())
 | 
			
		||||
		if err != nil {
 | 
			
		||||
			return nil, "OpenRepository", err
 | 
			
		||||
		}
 | 
			
		||||
		defer ctx.Repo.GitRepo.Close()
 | 
			
		||||
		return nil, "", fmt.Errorf("no open git repo found in context")
 | 
			
		||||
	}
 | 
			
		||||
	if len(filter) > 0 {
 | 
			
		||||
		filter = "refs/" + filter
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user