You can block force pushes (git push --force) on all branches or just the default branch of repositories owned by a user account or organization.

Repositories inherit force push settings from the user account or organization to which they belong. User accounts and organizations in turn inherit their force push settings from the force push settings for the entire appliance.

You can override the default inherited settings by configuring the settings for a user account or organization.

  1. As a site admin, sign in to your GitHub Enterprise instance at http(s)://[hostname]/login.

  2. In the upper-right corner of any page, click . Rocketship icon for accessing site admin settings

  3. In the search field, type the name of the user or organization and click Search. Site admin settings search field

  4. In the left sidebar, click Admin. Admin Tools

  5. Under "Repository default settings" in the "Force pushes" section, select

    • Block to block force pushes to all branches.
    • Block to the default branch to only block force pushes to the default branch. Block force pushes
  6. Optionally, select Enforce on all repositories to override repository-specific settings. Note that this will not override an appliance-wide policy.

    Block force pushes

The change takes effect immediately. If you change your mind later, you can re-allow force pushes from the same location in Site Admin.

Further reading