For this assignment, you need to have an account on GitHub.com. After logged in to your account, fork this repository into your github account. From there;
- Clone the repo onto your local machine/sciprog using
git clone
- Create your own branch using
git branch
with the format{FirstName}_{LastName}_{Brightspace/Canvas}
. Eg.John_Smith_Brightspace
, then usegit checkout branch_name
to work on that branch - Create, edit and upload files using the
git add
,commit
andpush
commands- You will need to generate a “personal access token” to push changes to this repo. Follow the instructions in the link above carefully, and when prompted for username and password, use your “personal access token” as your password.
- For the duration of the semester you will need to update the repository regularly with the practical codes which will be covered in the live demo sessions on Tuesdays. Remember the differences between a local repository and the online version, so you will need to ‘push’ your changes rather than just committing them.
This assignment will contribute 20% of your total marks to this module, so to ensure that you get full marks;
-
All practicals from Week 2 onwards should be included in the repo and the code from each practical should be able to be run and compiled (on sciprog) once cloned by another user. You can use your own solution or the material covered in the demos.
-
Each practical is clearly commented and the repository should be well structured and laid out (i.e. have a folder for each practical). This includes having sufficient README markdown or .txt files explaining the contents of each folder, and instructions on how to use/run the programs (these do not need to be exhaustive, enough information so that the reader understands your code).
-
Although there is no “weekly deadline”, you should update this repo weekly following each practical with clear and concise commit messages.
-
At the end, capture the output of the
git status
andgit log
commands ( eg.git log > gitlog_output.txt
will write the output to a file calledgitlog_output.txt
), and submit only these files to Brightspace/Canvas.
We are looking for stepwise development by committing code (and comments) on a regular basis. Marks will be deducted for;
- Not commenting your code and poorly maintained/updated repositories
- Uploaded code does not compile/unable to run
- Ambiguous commit messages
- All-in-one commit/push (i.e. uploading everything at once)
- This repository should only be used for the practical sessions covered in the live demo sessions ONLY. Assignments 1 & 2 should not be added to the repo. If the regular assignments are uploaded to your repository then you will receive 0% for this assignment.
There are plentiful resources on git introductions, such as https://guides.github.com/introduction/git-handbook/