mirror of
				https://gitea.com/gitea/tea.git
				synced 2025-10-31 09:15:26 +01:00 
			
		
		
		
	tea branches list/protect/unprotect (#645)
Hello, This is a proposal to support consulting / protecting / unprotecting branches for a specific repository. I copied the existing code for "issues" report and adapted to branches. There is no change of legacy code so I do not expect any impact. Supported commands are "list", "protect", "unprotect": - "List" print the list of branches with some available fields from gitea.Branch type. - "protect" creates a gitea.BranchProtection with some default parameters for some specific branches - "unprotect" destroys gitea.BranchProtection for some specific branches What is printed now could be enriched with additional information gitea datatypes already offer. Could you please evaluate this proposal? I would be happy to receive any comment or remark to take into account. **tea branches unprotect** --login opsi --repo opensky main **tea branches list** --login opsi --repo opensky --fields name,protected,user-can-merge,user-can-push,protection [name protected user-can-merge user-can-push protection] +--------+-----------+----------------+---------------+------------+ | NAME | PROTECTED | USER-CAN-MERGE | USER-CAN-PUSH | PROTECTION | +--------+-----------+----------------+---------------+------------+ | b_test | false | true | true | <None> | | main | false | true | true | <None> | +--------+-----------+----------------+---------------+------------+ **tea branches protect** --login opsi --repo opensky main **tea branches list** --login opsi --repo opensky --fields name,protected,user-can-merge,user-can-push,protection [name protected user-can-merge user-can-push protection] +--------+-----------+----------------+---------------+----------------------+ | NAME | PROTECTED | USER-CAN-MERGE | USER-CAN-PUSH | PROTECTION | +--------+-----------+----------------+---------------+----------------------+ | b_test | false | true | true | <None> | | main | true | true | false | - enable-push: false | | | | | | - approving: - | | | | | | merging: - pushing: | | | | | | | +--------+-----------+----------------+---------------+----------------------+ Following commands run OK: > make test > make fmt > make lint Co-authored-by: Leonard Vimond <leonard.vimond.e@thalesdigital.io> Co-authored-by: techknowlogick <techknowlogick@noreply.gitea.com> Reviewed-on: https://gitea.com/gitea/tea/pulls/645 Reviewed-by: techknowlogick <techknowlogick@noreply.gitea.com> Co-authored-by: leonard.vimond <leonard.vimond@noreply.gitea.com> Co-committed-by: leonard.vimond <leonard.vimond@noreply.gitea.com>
This commit is contained in:
		 leonard.vimond
					leonard.vimond
				
			
				
					committed by
					
						 techknowlogick
						techknowlogick
					
				
			
			
				
	
			
			
			 techknowlogick
						techknowlogick
					
				
			
						parent
						
							22370698bf
						
					
				
				
					commit
					20479663f0
				
			
							
								
								
									
										36
									
								
								cmd/branches.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								cmd/branches.go
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,36 @@ | ||||
| // Copyright 2024 The Gitea Authors. All rights reserved. | ||||
| // SPDX-License-Identifier: MIT | ||||
|  | ||||
| package cmd | ||||
|  | ||||
| import ( | ||||
| 	"code.gitea.io/tea/cmd/branches" | ||||
|  | ||||
| 	"github.com/urfave/cli/v2" | ||||
| ) | ||||
|  | ||||
| // CmdBranches represents to login a gitea server. | ||||
| var CmdBranches = cli.Command{ | ||||
| 	Name:        "branches", | ||||
| 	Aliases:     []string{"branch", "b"}, | ||||
| 	Category:    catEntities, | ||||
| 	Usage:       "Consult branches", | ||||
| 	Description: `Lists branches when called without argument. If a branch is provided, will show it in detail.`, | ||||
| 	ArgsUsage:   "[<branch name>]", | ||||
| 	Action:      runBranches, | ||||
| 	Subcommands: []*cli.Command{ | ||||
| 		&branches.CmdBranchesList, | ||||
| 		&branches.CmdBranchesProtect, | ||||
| 		&branches.CmdBranchesUnprotect, | ||||
| 	}, | ||||
| 	Flags: append([]cli.Flag{ | ||||
| 		&cli.BoolFlag{ | ||||
| 			Name:  "comments", | ||||
| 			Usage: "Whether to display comments (will prompt if not provided & run interactively)", | ||||
| 		}, | ||||
| 	}, branches.CmdBranchesList.Flags...), | ||||
| } | ||||
|  | ||||
| func runBranches(ctx *cli.Context) error { | ||||
| 	return branches.RunBranchesList(ctx) | ||||
| } | ||||
		Reference in New Issue
	
	Block a user