Gitlab Integration with Gradescope

Courses like cmsc417, cmsc320, cmsc330, cmsc422, cmsc424 and more use CS Gitlab + Gradescope to access and submit assignments. Here’s how it works:

  1. Get the assignment materials from Gitlab classroom.
  2. Clone the repository to any machine you are using.
  3. Work on the assignment, pushing back to Gitlab.
  4. Submit the assignment on Gradescope.
  5. Work on the assignment, pushing back to Gitlab. The grader/instructor will have something similar to this.

A custom GitLab container registry is not supported, but you can set up GitLab integration by going to the url: https://www.gradescope.com/courses/xxxx/gitlab/new and following the directions there.

Make sure to modify the course id in the url (where it says “xxxx”) with the ID from your own Gradescope course.

Commiting

Always start your work session with a pull to the computer you are working on, and end your session with a push back to GitHub. While you’re working on the assignment, be sure to commit often. This command will commit your changes to the local clone:

git commit -m ‘an informative log message’

Important note: When you run git commit, it’s good practice to use the -m flag to include a commit message, as in this example. Commit messages should be short but informative (i.e., more than just “committing” or “stuff”), describing what is new about this commit, relative to the previous one (e.g., “Finishing part 1” or “Fixing bug in function foo”). In addition to being standard industry practice, good commit messages may help you in CS 131. Although we won’t grade commit messages, we will occasionally read them. Messages can rarely hurt you (unless they’re extremely unprofessional), but may help you, e.g., if something goes wrong with your submission and you need help fixing it or possibly asking for leniency during the submission process.

Adding files

If you add a new file, you’ll need to add it to the repository: git add Pushing back to GitHub

Eventually, you’ll need to push the changes from your local clone to your fork on

GitHub: git push
If you’re working in a pair, you should always push; it’s how your teammate gets access to the updates.

Submit the assignment on Gradescope. You will submit your assignments via Gradescope. The Gradescope autograder (if applicable) will run your code through a set of scripts that will execute a number of test cases and record the scores. To submit your assignment, complete the following steps:

  1. The first time you submit HW 0, you may need to click “Connect to GitHub”, to connect your Gradescope account to your GitHub account.
  2. Access the course’s Gradescope site, select the appropriate assignment, and then choose GitHub as the submission method.
  3. The first time you submit your repository, you will need to authorize Gradescope to access your git repository. Select the appropriate repository and branch.
  4. If this is a group-programming submission, you will need to associate all team members with the submission. After you upload your files, click “Add Group Member” and add your partner to the submission.
  5. You can submit multiple times before the deadline. Your last submission will determine your grade.
  6. Once assignments are completely graded, you will be able to see your grade and assignment feedback on Gradescope. Grades will also be synched with grades.cs if instructors sync grades.