These are the suggested configurations for our GitHub repositories. Please stick to it unless you have special needs.
-
Options
- Features: Remove Wikis, Issues and Projects
- Merge button: Automatically delete head branches
- Merge button: Remove Allow merge commits and Allow rebase merging
- Merge button: Allow auto-merge
-
Manage access
- Add staff team as a collaborator with Admin access
- Add security team as collaborator with Write access
-
Branches
- Default branch:
develop
. Click update - Add these rules for the two branches
develop
andmain
:- Require pull request reviews before merging
- Require status checks to pass before merging (after you configured the CI add it to the required checks)
- Always suggest updating pull request branches
- Default branch:
-
Autolink references
- Add a new Autolink reference with:
- Reference prefix:
TICKET-
- Target URL:
https://redmine.renuo.ch/issues/<num>
- Reference prefix:
- Add a new Autolink reference with:
Each project has a team owning it. The team is named after the project: [team-name] = [project-name]
.
Thanks to this we can:
-
see who is responsible for a project;
-
assign issues to the right team;
-
assign pull requests to the right team.
-
Create a team with the name of the project and add all the developers working on it;
-
Give to each team member the role "maintainer";
-
Add the team to the repository with the "administrator" role;
-
Add a CODEOWNERS file with the team name in it:
# .github/CODEOWNERS
* @renuo/[team-name]