Description
CS1XC3 – Computer Science Practice and Experience: Development Basics
Primary Learning Objectives
• Use git to manage changes to a repository of code.
• Use GitHub to host a repository
Requirements
Part A – Basics of Using GitHub
Create a GitHub account. Create a repository for storing the solution to Assignment #2 (it is
posted underneath Assignment #2 on Avenue to Learn). The solution file should be modified to
contain a comment at the first line of the solution file with your name. You do not have to
provide any other information; for example you may not want to post your student ID publicly
(I would not recommend this).
Provide a link to your GitHub repository in a plaintext file called as2_repos.txt.
Part B – Using Git and Creating a Pull Request
Using your GitHub account, fork the repository located at:
https://github.com/cs1xc3demo/lettercounter/
Clone the repository on your local machine (i.e. your account on pascal server).
If you run git log –all –graph there will be two branches from the remote repository,
origin/main and origin/feature. Attempt to merge origin/feature into origin/main. Resolve any
conflict(s) that result and run git commit to commit the resolution.
Important: when you resolve conflicts, make sure that the changes made to BOTH branches are
reflected in your new commit to the repository. It’s not enough that you are able to commit a
merged version of the branches, the purpose of the changes made on both branches needs to
be reflected in your commit. Look at the commit logs to see what was intended by each
change. You may need to modify more than the code identified by any conflict(s) in order to
ensure the purpose of each change is correctly reflected in in the merge.
Your commit log message(s) should be descriptive of what was changed.
Once you have made the merge, push your local repository to the remote repository on your
GitHub account (the one that you forked from the repository on cs1xc3demo).
DO NOT CREATE A PULL REQUEST FOR THESE CHANGES.
After completing the above, provide a link to your fork GitHub repository in a plaintext file
called fork_repo.txt.
Do not post solutions to other assignments on GitHub or other public spaces.
Bonus – 5 marks
There is a bug in the code of one of the repository branches for Part B. If you identify it and fix
it as part of your forked repository you will receive a 5 mark bonus.
Submission
Submit both of your .txt files to the Assignment #10 dropbox on Avenue to Learn.
Marking scheme
Component Description Marks
Basic hosting Assignment #2 solution is hosted, with comment with
student name, on a GitHub repo.
30
Forked repository Lettercounter repository is forked on your own account. 10
Merge Are the branches merged? Does the new commit
incorporate the changes made across both branches? Is
50
the purpose of the changes respected? A pull request to
the original repository should NOT be created.
Log message Is a meaningful commit log message(s) present? 10
Total: 100