This page contains help topics for git.ssrc.us, the SSRC and CRSS git server.

Accessing the site

The Web api is available at https://git.ssrc.us:4443/. For those wondering why port 4443 is being used, it's done so that we can more easily run the server behind a NAT firewall if needed. The normal SSL port is 443; we just added 4 to the front. However, if you go to https://git.ssrc.us/ or https://git.ssrc.ucsc.edu/, it'll redirect you.

Creating an account

Accounts can be created by the git.ssrc.us admins, listed on the git.ssrc.us login page. Please make sure you set up two-factor authentication!

Adding SSH keys

We strongly recommend using SSH for git operations (rather than https). This is particularly important if you use git submodule, since the submodule specification includes the URL, and the SSH url is the same for everyone while the https URL isn't.

You'll probably want to upload one or more SSH keys to your account. You can do this under your account (far right) -> Settings -> SSH keys.

Creating a new project (git repository)

Most of the time, you're creating an SSRC repository, which should be created under the SSRC group or a subgroup, like CAPES. However, you can also create a repository under your account for something like a class project or a thesis.

If you're importing an existing project, create a bare repository. If it's a new project, make sure it has a README.md file that'll show up on the overview page of the new project.

Default access rules

There are three basic system-wide privileges that may be granted to users on SSRC GitLab: membership in a group, ability to create groups, and ability to create personal projects. These are summarized in the following table:

SSRC git user privileges
Who Group membership Can create personal projects? Can create groups?
SSRC students SSRC students Yes Yes
Non-SSRC students (none) No No
SSRC affiliates SSRC affiliates Yes No
SSRC faculty SSRC Yes Yes

By default, only SSRC faculty have read-write access to all SSRC repositories; this is done as a safety measure. The SSRC students and SSRC affiliates groups have read-only access to all SSRC repositories.

Users are typically added to the SSRC subgroups or specific projects on which they're working. For example, someone working on the Twizzler project would be added to the SSRC/Twizzler subgroup as a Developer or Maintainer (docs on GitLab permissions). A Developer can read and write a repository, and a Maintainer can, in addition, add or remove users. Project membership gives these permissions for a single project; subgroup membership gives them for all projects in the subgroup.

SSRC git admins

The current SSRC git admins are:

Most requests should go to the student git admins first.

Last modified 12 Mar 2021