-
Notifications
You must be signed in to change notification settings - Fork 188
New GitHubRepositoryBranchProtectionRule
Creates a branch protection rule for a branch on a given GitHub repository.
New-GitHubRepositoryBranchProtectionRule [-OwnerName <String>] [-RepositoryName <String>]
[-BranchName] <String> [-StatusChecks <String[]>] [-RequireUpToDateBranches] [-EnforceAdmins]
[-DismissalUsers <String[]>] [-DismissalTeams <String[]>] [-DismissStaleReviews] [-RequireCodeOwnerReviews]
[-RequiredApprovingReviewCount <Int32>] [-RestrictPushUsers <String[]>] [-RestrictPushTeams <String[]>]
[-RestrictPushApps <String[]>] [-RequireLinearHistory] [-AllowForcePushes] [-AllowDeletions]
[-AccessToken <String>] [-WhatIf] [-Confirm] [<CommonParameters>]
New-GitHubRepositoryBranchProtectionRule [-Uri] <String> [-BranchName] <String> [-StatusChecks <String[]>]
[-RequireUpToDateBranches] [-EnforceAdmins] [-DismissalUsers <String[]>] [-DismissalTeams <String[]>]
[-DismissStaleReviews] [-RequireCodeOwnerReviews] [-RequiredApprovingReviewCount <Int32>]
[-RestrictPushUsers <String[]>] [-RestrictPushTeams <String[]>] [-RestrictPushApps <String[]>]
[-RequireLinearHistory] [-AllowForcePushes] [-AllowDeletions] [-AccessToken <String>] [-WhatIf] [-Confirm]
[<CommonParameters>]
Creates a branch protection rules for a branch on a given GitHub repository.
The Git repo for this module can be found here: http://aka.ms/PowerShellForGitHub
New-GitHubRepositoryBranchProtectionRule -OwnerName microsoft -RepositoryName PowerShellForGitHub -BranchName master -EnforceAdmins
Creates a branch protection rule for the master branch of the PowerShellForGithub repository enforcing all configuration restrictions for administrators.
New-GitHubRepositoryBranchProtectionRule -Uri 'https://github.com/microsoft/PowerShellForGitHub' -BranchName master -RequiredApprovingReviewCount 1
Creates a branch protection rule for the master branch of the PowerShellForGithub repository requiring one approving review.
If provided, this will be used as the AccessToken for authentication with the REST Api. Otherwise, will attempt to use the configured value or will run unauthenticated.
Type: System.String
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: FalseAllows deletion of the protected branch by anyone with write access to the repository.
Type: System.Management.Automation.SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: FalsePermits force pushes to the protected branch by anyone with write access to the repository.
Type: System.Management.Automation.SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: FalseName of the specific branch to create the protection rule on.
Type: System.String
Parameter Sets: (All)
Aliases:
Required: True
Position: 3
Default value: None
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: FalseSpecify which teams can dismiss pull request reviews.
Type: System.String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: FalseSpecify the user names of users who can dismiss pull request reviews. This can only be specified for organization-owned repositories.
Type: System.String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: FalseIf specified, approving reviews when someone pushes a new commit are automatically dismissed.
Type: System.Management.Automation.SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: FalseEnforce all configured restrictions for administrators.
Type: System.Management.Automation.SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: FalseOwner of the repository. If not supplied here, the DefaultOwnerName configuration property value will be used.
Type: System.String
Parameter Sets: Elements
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: FalseName of the repository. If not supplied here, the DefaultRepositoryName configuration property value will be used.
Type: System.String
Parameter Sets: Elements
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: FalseBlocks merging pull requests until code owners review them.
Type: System.Management.Automation.SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: FalseSpecify the number of reviewers required to approve pull requests. Use a number between 1 and 6.
Type: System.Int32
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: 0
Accept pipeline input: False
Accept wildcard characters: FalseEnforces a linear commit Git history, which prevents anyone from pushing merge commits to a branch. Your repository must allow squash merging or rebase merging before you can enable a linear commit history.
Type: System.Management.Automation.SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: FalseRequire branches to be up to date before merging. This setting will not take effect unless at least one status check is defined.
Type: System.Management.Automation.SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: FalseSpecify which apps have push access.
Type: System.String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: FalseSpecify which teams have push access.
Type: System.String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: FalseSpecify which users have push access.
Type: System.String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: FalseThe list of status checks to require in order to merge into the branch.
Type: System.String[]
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: FalseUri for the repository. The OwnerName and RepositoryName will be extracted from here instead of needing to provide them individually.
Type: System.String
Parameter Sets: Uri
Aliases: RepositoryUrl
Required: True
Position: 2
Default value: None
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: FalsePrompts you for confirmation before running the cmdlet.
Type: System.Management.Automation.SwitchParameter
Parameter Sets: (All)
Aliases: cf
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: FalseShows what would happen if the cmdlet runs. The cmdlet is not run.
Type: System.Management.Automation.SwitchParameter
Parameter Sets: (All)
Aliases: wi
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: FalseThis cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.
Protecting a branch requires admin or owner permissions to the repository.
[Back to PowerShellForGitHub]
- Add-GitHubAssignee
- Add-GitHubGistStar
- Add-GitHubIssueLabel
- Backup-GitHubConfiguration
- Clear-GitHubAuthentication
- ConvertFrom-GitHubMarkdown
- Copy-GitHubGist
- Disable-GitHubRepositorySecurityFix
- Disable-GitHubRepositoryVulnerabilityAlert
- Enable-GitHubRepositorySecurityFix
- Enable-GitHubRepositoryVulnerabilityAlert
- Get-GitHubAssignee
- Get-GitHubCloneTraffic
- Get-GitHubCodeOfConduct
- Get-GitHubConfiguration
- Get-GitHubContent
- Get-GitHubEmoji
- Get-GitHubEvent
- Get-GitHubGist
- Get-GitHubGistComment
- Get-GitHubGitIgnore
- Get-GitHubIssue
- Get-GitHubIssueComment
- Get-GitHubIssueTimeline
- Get-GitHubLabel
- Get-GitHubLicense
- Get-GitHubMilestone
- Get-GitHubOrganizationMember
- Get-GitHubPathTraffic
- Get-GitHubProject
- Get-GitHubProjectCard
- Get-GitHubProjectColumn
- Get-GitHubPullRequest
- Get-GitHubRateLimit
- Get-GitHubReaction
- Get-GitHubReferrerTraffic
- Get-GitHubRelease
- Get-GitHubReleaseAsset
- Get-GitHubRepository
- Get-GitHubRepositoryActionsPermission
- Get-GitHubRepositoryBranch
- Get-GitHubRepositoryBranchProtectionRule
- Get-GitHubRepositoryCollaborator
- Get-GitHubRepositoryContributor
- Get-GitHubRepositoryFork
- Get-GitHubRepositoryLanguage
- Get-GitHubRepositoryTag
- Get-GitHubRepositoryTeamPermission
- Get-GitHubRepositoryTopic
- Get-GitHubTeam
- Get-GitHubTeamMember
- Get-GitHubUser
- Get-GitHubUserContextualInformation
- Get-GitHubViewTraffic
- Group-GitHubIssue
- Group-GitHubPullRequest
- Initialize-GitHubLabel
- Invoke-GHRestMethod
- Invoke-GHRestMethodMultipleResult
- Join-GitHubUri
- Lock-GitHubIssue
- Move-GitHubProjectCard
- Move-GitHubProjectColumn
- Move-GitHubRepositoryOwnership
- New-GitHubGist
- New-GitHubGistComment
- New-GitHubIssue
- New-GitHubIssueComment
- New-GitHubLabel
- New-GitHubMilestone
- New-GitHubProject
- New-GitHubProjectCard
- New-GitHubProjectColumn
- New-GitHubPullRequest
- New-GitHubRelease
- New-GitHubReleaseAsset
- New-GitHubRepository
- New-GitHubRepositoryBranch
- New-GitHubRepositoryBranchProtectionRule
- New-GitHubRepositoryFork
- New-GitHubRepositoryFromTemplate
- New-GitHubTeam
- Remove-GitHubAssignee
- Remove-GitHubGist
- Remove-GitHubGistComment
- Remove-GitHubGistFile
- Remove-GitHubGistStar
- Remove-GitHubIssueComment
- Remove-GitHubIssueLabel
- Remove-GitHubLabel
- Remove-GitHubMilestone
- Remove-GitHubProject
- Remove-GitHubProjectCard
- Remove-GitHubProjectColumn
- Remove-GitHubReaction
- Remove-GitHubRelease
- Remove-GitHubReleaseAsset
- Remove-GitHubRepository
- Remove-GitHubRepositoryBranch
- Remove-GitHubRepositoryBranchProtectionRule
- Remove-GitHubRepositoryTeamPermission
- Remove-GitHubTeam
- Rename-GitHubGistFile
- Rename-GitHubRepository
- Rename-GitHubTeam
- Reset-GitHubConfiguration
- Restore-GitHubConfiguration
- Set-GitHubAuthentication
- Set-GitHubConfiguration
- Set-GitHubContent
- Set-GitHubGist
- Set-GitHubGistComment
- Set-GitHubGistFile
- Set-GitHubGistStar
- Set-GitHubIssue
- Set-GitHubIssueComment
- Set-GitHubIssueLabel
- Set-GitHubLabel
- Set-GitHubMilestone
- Set-GitHubProfile
- Set-GitHubProject
- Set-GitHubProjectCard
- Set-GitHubProjectColumn
- Set-GitHubReaction
- Set-GitHubRelease
- Set-GitHubReleaseAsset
- Set-GitHubRepository
- Set-GitHubRepositoryActionsPermission
- Set-GitHubRepositoryTeamPermission
- Set-GitHubRepositoryTopic
- Set-GitHubTeam
- Split-GitHubUri
- Test-GitHubAssignee
- Test-GitHubAuthenticationConfigured
- Test-GitHubGistStar
- Test-GitHubOrganizationMember
- Test-GitHubRepositoryVulnerabilityAlert
- Unlock-GitHubIssue