Step 0

last update:

Set up version control

  • Set up your Github account

Create a Github account (if you do not already have one). This is the account you should use to create and submit all of your assignments this semester.

  • Create a git repository for the assignment.

Log in to your Github account. Then click this assignment link. If your partner has already created a team, join their team. Otherwise, create a new team name for yourself.

Take note of the URL of the Github repository that gets set up!

  • Fill out the course questionnaire to let the instructor and TA know your github user name and the repository you (and your partner) will be using. This part is due by Friday, August 24th, 2018.

Write a Makefile

Create a Makefile in the main directory of your repository (we will be using Makefiles to drive the building and testing process of all of your code)

Create a target called team that first prints out your team name (the same team name you used to create your Github repo), then prints out the following information for each member of the project:

  1. Full name (first and last)
  2. Github username

For example, if the TAs were in a team called TAs, typing

> make team

would print the following:

  Team: TAs

  Chris Wright

  Kangjing Huang


We will use the information printed by your Makefile in our grading script. So if you make a formatting mistake, your grade may not be correctly computed. We will use this same team target to collect user info for future steps, so if there is an error, this is your chance to correct it without any penalty.

Submitting your code

Once you have a version of your program that you want to submit, run the following commands:

  > git tag -a step0-submission -m "Submission for step 0"
  > git push --tags

This will create a tag named step0-submission and push it to the remote server. The grading system will check out whichever version you have tagged step0-submission and grade that.

If you want to update your submission (and tell the grading system to ignore any previous submissions) type:

  > git tag -a -f step0-submission -m "Submission for step 0"
  > git push --tags

This will overwrite any other tag named step0-submission with one for the current commit.