Automatic member inclusion for all projects forks in a group

Problem to solve

I'm exploring options for a GitLab CE configuration to be ideally suitable for use for university software development laboratory coursework.

Two requirements are:

  1. the lecturer (a gitlab user) has read access to all student code.

  2. a student should be able to @ mention the lecturer and lab helpers to ask for assistance, in commit comment boxes and line-by-line in one of their commits.

In the current setup, the onus is on a student to add their lecturer and all lab helpers (about 5) as members of their fork, before read access and @ mentions are possible.

Further details

Use case:

The workflow being used is:

  1. Lecturer creates a group for the class.

  2. Lecturer creates projects in that group, one per coursework.

  3. Students are added to the group.

  4. Students fork the projects.

Then when the student wants help from the lecturer and lab helpers, or the lecturer wants to look at in-progress code:

  1. Student adds the lecturer and lab helpers individually as a member of their forked project.

  2. Lecturer and lab helpers interact via commit comments and via @ mentions line-by-line in each commit.

Goal:

Instead, it be great if, when a student forks a project in the group, the lecturer and lab helper users immediately have read access and comment permissions on commits of all forked projects.

Benefits:

The 200+ students will no longer be obliged to manually add about 6 users to their fork, thus alleviating them from this project maintenance duty and the code feedback process can begin sooner.

Proposal

Two options are:

  1. A certain collection of users (namely the lecturer and lab helpers) are automatically added as members of every project forked from a particular group.

  2. An improvement over (1) would be if the lecturer and lab helpers were all combined into a group/subgroup of users, such that a student simply needs to fork and then mention @lab-helpers to get their attention for help.

What does success look like, and how can we measure that?

A student will not need to manually add a lecturer and lab helpers users as members to every coursework project they fork.