Skip to content

Set-GitHubRepositoryPermission

SYNOPSIS

Set the permission level for a team on a repository

SYNTAX

Set-GitHubRepositoryPermission [-Owner] <String> [-Name] <String> [-Team] <String> [[-TeamOwner] <String>]
 [-Permission] <String> [[-Context] <Object>] [-ProgressAction <ActionPreference>] [-WhatIf] [-Confirm]
 [<CommonParameters>]

DESCRIPTION

Assigns or updates the permission level for a specific team on a GitHub repository. The permission can be standard roles like 'pull', 'push', 'admin', or any custom roles defined in the organization. If the value 'None' is specified, the function removes the team's access to the repository.

EXAMPLES

EXAMPLE 1

Set-GitHubRepositoryPermission -Owner 'MyOrg' -Name 'MyRepo' -Team 'devs' -Permission 'push'

Grants the 'push' permission to the 'devs' team for the repository 'MyRepo' owned by 'MyOrg'.

PARAMETERS

-Owner

The account owner of the repository. The name is not case sensitive.

Type: String
Parameter Sets: (All)
Aliases: Organization

Required: True
Position: 1
Default value: None
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: False

-Name

The name of the repository without the .git extension. The name is not case sensitive.

Type: String
Parameter Sets: (All)
Aliases:

Required: True
Position: 2
Default value: None
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: False

-Team

The slug of the team to add or update repository permissions for.

Type: String
Parameter Sets: (All)
Aliases: Slug, TeamSlug

Required: True
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-TeamOwner

The owner of the team. If not specified, the owner will default to the value of -Owner.

Type: String
Parameter Sets: (All)
Aliases:

Required: False
Position: 4
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-Permission

The permission to grant the team on this repository. We accept the following permissions to be set: pull, triage, push, maintain, admin and you can also specify a custom repository role name, if the owning organization has defined any. If you want to remove the permissions specify 'None'.

Type: String
Parameter Sets: (All)
Aliases:

Required: True
Position: 5
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-Context

The context to run the command in. Used to get the details for the API call. Can be either a string or a GitHubContext object.

Type: Object
Parameter Sets: (All)
Aliases:

Required: False
Position: 6
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet is not run.

Type: SwitchParameter
Parameter Sets: (All)
Aliases: wi

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-Confirm

Prompts you for confirmation before running the cmdlet.

Type: SwitchParameter
Parameter Sets: (All)
Aliases: cf

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-ProgressAction

{{ Fill ProgressAction Description }}

Type: ActionPreference
Parameter Sets: (All)
Aliases: proga

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

CommonParameters

This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.

INPUTS

GitHubRepository

OUTPUTS

void

NOTES

Add or update team repository permissions

https://psmodule.io/GitHub/Functions/Repositories/Set-GitHubRepositoryPermission/