Add support for ref parameter to get raw file API (#14602)
Fix #14597 Signed-off-by: Andrew Thornton <art27@cantab.net> Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com> Co-authored-by: techknowlogick <techknowlogick@gitea.io>
This commit is contained in:
		
					parent
					
						
							
								758627cf8f
							
						
					
				
			
			
				commit
				
					
						b337c606d3
					
				
			
		
					 2 changed files with 27 additions and 1 deletions
				
			
		|  | @ -43,6 +43,11 @@ func GetRawFile(ctx *context.APIContext) { | |||
| 	//   description: filepath of the file to get | ||||
| 	//   type: string | ||||
| 	//   required: true | ||||
| 	// - name: ref | ||||
| 	//   in: query | ||||
| 	//   description: "The name of the commit/branch/tag. Default the repository’s default branch (usually master)" | ||||
| 	//   type: string | ||||
| 	//   required: false | ||||
| 	// responses: | ||||
| 	//   200: | ||||
| 	//     description: success | ||||
|  | @ -54,7 +59,22 @@ func GetRawFile(ctx *context.APIContext) { | |||
| 		return | ||||
| 	} | ||||
| 
 | ||||
| 	blob, err := ctx.Repo.Commit.GetBlobByPath(ctx.Repo.TreePath) | ||||
| 	commit := ctx.Repo.Commit | ||||
| 
 | ||||
| 	if ref := ctx.QueryTrim("ref"); len(ref) > 0 { | ||||
| 		var err error | ||||
| 		commit, err = ctx.Repo.GitRepo.GetCommit(ref) | ||||
| 		if err != nil { | ||||
| 			if git.IsErrNotExist(err) { | ||||
| 				ctx.NotFound() | ||||
| 			} else { | ||||
| 				ctx.Error(http.StatusInternalServerError, "GetBlobByPath", err) | ||||
| 			} | ||||
| 			return | ||||
| 		} | ||||
| 	} | ||||
| 
 | ||||
| 	blob, err := commit.GetBlobByPath(ctx.Repo.TreePath) | ||||
| 	if err != nil { | ||||
| 		if git.IsErrNotExist(err) { | ||||
| 			ctx.NotFound() | ||||
|  |  | |||
|  | @ -7845,6 +7845,12 @@ | |||
|             "name": "filepath", | ||||
|             "in": "path", | ||||
|             "required": true | ||||
|           }, | ||||
|           { | ||||
|             "type": "string", | ||||
|             "description": "The name of the commit/branch/tag. Default the repository’s default branch (usually master)", | ||||
|             "name": "ref", | ||||
|             "in": "query" | ||||
|           } | ||||
|         ], | ||||
|         "responses": { | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 zeripath
				zeripath