Skip to main content

Managing custom properties for repositories in your enterprise

Create custom properties to give organizations a consistent way to categorize repositories.

Who can use this feature?

Enterprise owners

Note

Custom properties for your enterprise are in public preview and subject to change.

Custom properties allow you to decorate your repositories with information such as compliance frameworks, data sensitivity, or project details. Custom properties are private and can only be viewed by people with read permissions to the repository. An enterprise can have up to 100 property definitions. An allowed value list can have up to 200 items.

Defining custom properties at the enterprise level allows you to create consistent values that users can apply to repositories. With custom properties in place, you can apply consistent governance across repositories in your enterprise by creating a ruleset or repository policy targeting repositories with certain properties. See Governing how people use repositories in your enterprise.

Allowed characters

Custom property names and values may only contain certain characters:

  • Names: a-z, A-Z, 0-9, _, -, $, #.
  • Values: All printable ASCII characters except ".

Who can set and view values for custom properties I define?

After you define a custom property, users can set a value for that property in repositories in the enterprise. See Managing custom properties for repositories in your organization.

  • As an enterprise owner, you can set a default value for required properties.
  • Organization owners can set values in their organization, either across repositories or at the repository level.
  • If enabled, people with repository access, or the custom properties fine-grained permission, can set and update the property value for their repository.

People with read permissions to a repository can view the custom property values for that repository.

Additionally, organization owners can search for repositories in their organization by custom property values. See Managing custom properties for repositories in your organization.

Adding custom properties

You can add custom properties to your enterprise to make those properties available in all of your orgaizations.

  1. In the top-right corner of GitHub, click your profile photo.
  2. Depending on your environment, click Your enterprise, or click Your enterprises then click the enterprise you want to view.
  3. In the left sidebar, under "Policies", click Custom properties.
  4. To add a new custom property, in the upper-right corner, click New property.
  5. Enter a name, description, and type for the custom property. The name must be unique across all of your organizations, and cannot contain spaces.
  6. Optionally, select Allow repository actors to set this property. When enabled, repository users and apps with the repository-level custom properties fine-grained permission will be able to set and update the property value for their repository. Additionally, any actor creating a repository can set the property on the repository.
  7. Optionally, select Require this property for all repositories and add a default value. This means that you require that all repositories in your enterprise have a value for this property. Repositories that don’t have an explicit value for this property will inherit the default value.
  8. Click Save property.