-
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: False
Allows 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: False
Permits 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: False
Name 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: False
Specify 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: False
Specify 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: False
If 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: False
Enforce 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: False
Owner 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: False
Name 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: False
Blocks 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: False
Specify 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: False
Enforces 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: False
Require 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: False
Specify 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: False
Specify 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: False
Specify 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: False
The 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: False
Uri 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: False
Prompts 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: False
Shows 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: False
This 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