Bonus

1 supplementary point on the final grade of the course can be obtained for contributions to improving the course material (practicals, Readme, etc.).

Bonus conditions

  • Only .5 point is given for a contribution,
  • Only the first contribution proposed on a theme is rewarded (no point given for followers!),
  • Documented pull-requests (PR) are expected: details are expected to help to judge what the proposition improves/corrects,
  • For typos. At least 5 corrections are expected to receive .5 points. The corrections should be gathered in a single PR,
  • Each student can only get 1 point (maximum) through bonuses.

Pull Request (PR)

The pull request system is a standard way of proposing improvements and modifications in open-source projects. Here we use it for the opportunity to improve the course material.

The principle is the following

  • Fork: Connect to your GitHub account (see Git course for details) and fork the current repository by clicking on the “Fork” icon (note that HMMA238 was the old name of this course): plot

  • Go to your GitHub account and find the HAX712X repository. In what follows you should substitute my_github_id with your GitHub identification; in the screenshots, the examples are with my_github_id=josephsalmon and they should be adapted according to yours. The URL is https://github.com/my_github_id/HAX712X.

  • Get the cloning repository by clicking the “clone” button and choose either the https or ssh protocol (the latter being recommended to avoid typing your password at each git pull/push): plot .

  • Clone the repository on your local machine. On Linux this consists of typing the following line in a terminal:

$ git clone git@github.com:my_github_id/HAX712X.git
  • Adding a remote: You need to configure a remote that points to the upstream repository. Before you can sync your fork with an upstream repository, you must do this step
$ git remote add upstream https://github.com/josephsalmon/HAX712X.git
  • You can check the remote available (yours and the class one) by typing:
$ git remote -v
  • Create a new branch for instance called improving_git, and move to it
$ git checkout -b improving_git
  • Make local edits on some of the files in the project, and then commit and push the new branch improving_git:
$ git commit -am "I edited some typos"
$ git push --set-upstream origin improving_git
$ git fetch upstream
  • To come back to the main branch:
$ git checkout main
$ git pull upstream main

Additional material

Back to top