Advanced Usage

GitLab can be useful beyond simple hand-in of exercises by students. With its issue tracker, CI, wiki, markdown support it can be used to address course management and coordination too. The API additionally allows for a great deal of automation of otherwise tedious and time-consuming tasks for the teaching assistants.

Examples

  • Automatic synchronization of the students in class and access to projects from eDoz.
  • Automatic evaluation of submitted code via CI, similar to what code expert does.
    • A dedicated CI instance can be operated by the group if complex checks are needed.
  • Enforcing submission deadlines by temporarily reducing student access to guest while the submissions are automatically graded.
  • Having an automatically updated scoreboard for the student exercises.
  • Using the issue tracker for organizing registration for presence in lectures. Students would need to give a thumbs up in the invitation issue and an automatic script would pull out the user list and send out confirmation mails automatically on given deadlines.
  • Submit exercise sheets through the issue tracker to facilitate correction management and discussion.
  • All communications with the students through the issue tracker.
    • A background script enforces visibility to course members or private according to subject line.
    • Tagging done by script that check the subject line for positive-listed tag marks.

References

The Network Security Group has successfully used gitlab.inf.ethz.ch for their classes in 2020. The above examples all come from their course. Some screenshots from their course can be found on here. The group is willing to share their experience and script collection with others. Some programming skills and a hacking attitude is required. Please contact our service desk for the initial introduction.

Page URL: https://isg.inf.ethz.ch/bin/view/Main/ServicesVersionControlGitLabCourseProjectsAdvanced
2022-12-10
© 2022 Eidgenössische Technische Hochschule Zürich