I have a project on Github and I want to create two distinct teams of contributors.
The first team will be a push/pull self-organising team of people who can make changes at will.
The second team will be people who are new to the project and need more guidance.
I would like to be able to “approve” the changes made by the second team – i.e. peer review them and help them to better understand our standards and the direction of the project.
How do I set the permissions so they can make changes, but those changes need to be approved?
You can add the “trusted” developers as collaborators (Repository Administration → Collaborators); that gives them full read/write access. The rest of the developers can fork the repository and issue a pull request when they want to merge something back. You’ll do a code review in the pull request and if it’s fine, merge it.