-
Notifications
You must be signed in to change notification settings - Fork 0
Description
We should agree on a set of GitHub repository administration policies and best practices. There should then be properly documented and enforced.
Here is a first draft. Probably lots of things missing, but it's a way of getting the document started and the discussion going.
Repository administration recommended policies and best practices
Repository administrators
As stated in the GitHub management policy, each repository must have at least two individual administrators. These cannot be teams and there needs to be a very compelling reason for an external user to be made an administrator.
User permissions
We recommend users be given permissions on need basis. That means, for example, that write permissions to a repository should only be given if a user needs those permissions for their work. By default, all members of the ACCESS-NRI GitHub organisation have read permissions to all repositories in the organisation. Read permissions allow users to
- clone a repository
- create issues
- create a pull request from a fork
Write permissions are needed if a user needs to:
- push a branch to the repository (not through a fork)
- use the pre-release infrastructure, as pre-release builds are not triggered for forks
- merge a pull request
Branch protections
At a minimum, the default branch of a repository should always be protected.
Topics
All repositories should be tagged with the appropriate topics for better discoverability.
Private repositories
New repository check-list
To ensure new repositories follow our policies and best-practices, we recommend using the following check-list when creating a new repository:
- Add at least two administrators to the repository
- Add relevant topics
- Give users write permissions, on need basis
- Add branch protection rules