Member Aliases

Map local member names to GitLab usernames without changing display output.

Member aliases are useful when a local members file contains course-internal names, but the corresponding GitLab accounts use different usernames.

Keep GitLab usernames in groups[].members. Divekit uses those values for GitLab access, repository membership, distribute, patch, members list, overview, and the GUI. The optional displayNames map only controls how those members are shown locally.

Set an Alias

If a member currently appears as myname in members.json, but the GitLab username is myname_extern, set the alias before rerunning distribution:

divekit members alias set -d ST2M5 myname myname_extern

This updates the configured members file in place:

  • groups[].members stores myname_extern
  • displayNames.myname_extern stores myname

After that, rerun the command that previously could not resolve the member:

divekit distribute -d ST2M5

For non-interactive runs, pass both values explicitly:

divekit members alias set -d ST2M5 \
  --display-name myname \
  --gitlab-username myname_extern \
  --yes

Display Behavior

When an alias is configured, user-facing output shows the display name together with the GitLab username:

myname (@myname_extern)

If no alias is configured, Divekit shows the GitLab username directly:

myname_extern

This means other people can still run Divekit commands against the same GitLab origin without having exchanged a local alias list first. The canonical member value remains the GitLab username.

Manage Aliases

List configured aliases:

divekit members alias list -d ST2M5

Remove display-name metadata without changing the GitLab username stored in members.json:

divekit members alias unset -d ST2M5 myname_extern

For the file format details, see members.json.