mirror of
				https://github.com/go-gitea/gitea
				synced 2025-10-31 03:18:24 +00:00 
			
		
		
		
	Fix the swagger documentation for the `diffpatch` API endpoint, and fix the wrong API path caused by a refactoring change. Closes #35602 --------- Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
		
			
				
	
	
		
			67 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			67 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
| // Copyright 2021 The Gitea Authors. All rights reserved.
 | |
| // SPDX-License-Identifier: MIT
 | |
| 
 | |
| package repo
 | |
| 
 | |
| import (
 | |
| 	"net/http"
 | |
| 
 | |
| 	api "code.gitea.io/gitea/modules/structs"
 | |
| 	"code.gitea.io/gitea/modules/util"
 | |
| 	"code.gitea.io/gitea/services/context"
 | |
| 	"code.gitea.io/gitea/services/repository/files"
 | |
| )
 | |
| 
 | |
| // ApplyDiffPatch handles API call for applying a patch
 | |
| func ApplyDiffPatch(ctx *context.APIContext) {
 | |
| 	// swagger:operation POST /repos/{owner}/{repo}/diffpatch repository repoApplyDiffPatch
 | |
| 	// ---
 | |
| 	// summary: Apply diff patch to repository
 | |
| 	// consumes:
 | |
| 	// - application/json
 | |
| 	// produces:
 | |
| 	// - application/json
 | |
| 	// parameters:
 | |
| 	// - name: owner
 | |
| 	//   in: path
 | |
| 	//   description: owner of the repo
 | |
| 	//   type: string
 | |
| 	//   required: true
 | |
| 	// - name: repo
 | |
| 	//   in: path
 | |
| 	//   description: name of the repo
 | |
| 	//   type: string
 | |
| 	//   required: true
 | |
| 	// - name: body
 | |
| 	//   in: body
 | |
| 	//   required: true
 | |
| 	//   schema:
 | |
| 	//     "$ref": "#/definitions/ApplyDiffPatchFileOptions"
 | |
| 	// responses:
 | |
| 	//   "200":
 | |
| 	//     "$ref": "#/responses/FileResponse"
 | |
| 	//   "404":
 | |
| 	//     "$ref": "#/responses/notFound"
 | |
| 	//   "423":
 | |
| 	//     "$ref": "#/responses/repoArchivedError"
 | |
| 	apiOpts, changeRepoFileOpts := getAPIChangeRepoFileOptions[*api.ApplyDiffPatchFileOptions](ctx)
 | |
| 	opts := &files.ApplyDiffPatchOptions{
 | |
| 		Content: apiOpts.Content,
 | |
| 		Message: util.IfZero(apiOpts.Message, "apply-patch"),
 | |
| 
 | |
| 		OldBranch: changeRepoFileOpts.OldBranch,
 | |
| 		NewBranch: changeRepoFileOpts.NewBranch,
 | |
| 		Committer: changeRepoFileOpts.Committer,
 | |
| 		Author:    changeRepoFileOpts.Author,
 | |
| 		Dates:     changeRepoFileOpts.Dates,
 | |
| 		Signoff:   changeRepoFileOpts.Signoff,
 | |
| 	}
 | |
| 
 | |
| 	fileResponse, err := files.ApplyDiffPatch(ctx, ctx.Repo.Repository, ctx.Doer, opts)
 | |
| 	if err != nil {
 | |
| 		handleChangeRepoFilesError(ctx, err)
 | |
| 	} else {
 | |
| 		ctx.JSON(http.StatusCreated, fileResponse)
 | |
| 	}
 | |
| }
 |