This course is built on GitHub’s infrastructure, GitHub Classroom, for assignment submission and grading.

https://youtu.be/OBDoua4LPxM

Here is an overview of the workflow of assignments.

  1. You will be give a link to each assignment. Once you accept the assignment, GitHub will generate a copy under your GitHub account
  2. Work on the assignment as instructed on the README. You can clone your fork and work on your favorite IDE. Alternatively, you can use Github Codespaces. A key benefit of Codespaces is that you’ll get a ready-to-use pre-configured environment to jump onto the assignment. See the video on how to create your codespace.
  3. Once you worked out the assignment, you need to submit the assignment with the “git add”, “git commit” and “git push” commands.
  4. It will trigger the auto-grading feature of GitHub to compute the score for the assignment. You can check out the assignment score on GitHub Actions. You can submit the assignment many times.

Requesting code review

https://www.youtube.com/watch?v=x9ExIMW7_fE

Updating assignments

In case there are bugs in the assignments, the instructor may ask you to update the assignment repository. This requires some knowledge about git. Therefore, we created update_repo.sh under the home folder of the Github Codespaces. This program automates the update process by running a series of git commands. Follow the steps below to use the command:

  1. Move to the root folder of your repository (for codespaces, it’s the home folder).
  2. Run the command bash update_repo.sh <repo_name>, replacing <repo_name> with the name of the repository. For example, if the assignment repository is “asc-perceptron”, then bash update_repo.sh asc-perceptron
  3. The program will fetch the instructor's repository and apply the changes to your repository.
  4. If there are any conflicts, you will need to resolve them manually.
  5. Once the conflicts are resolved, commit the changes to complete the update.

Please note that you should only use this command when instructed by the instructors.