Submission instructions.
This document provides instructions for submitting assignments. If you have any trouble following the instructions, or submitting your assignments, please contact the course staff.
This is the same code submission system as is used this semester by CS 51 and CS 161, and also by CS 61 last semester. You may have peers that can help you with these instructions. The basic idea is that you will set up a Git repository for your CS 152 work this semester, and then configure it so that the CS 152 course staff can see your repository. Thus, to submit your assignment, you simply make sure that you add your assignment to your Git repository, and push it to the server.
0. Prerequisites
You will need to have git installed on your computer, and an account on code.seas.harvard.edu
. You may already have these. If not, see these instructions.
- git
If you are on OS X and have homebrew you can execute:
brew install git
. If you are on *nix, try your favorite package manager. If you're on Windows, you might want to look into TortoiseGIT. Links to additional information about git, including information about downloading and installing a git client, is available at https://code.seas.harvard.edu/about. - code.seas.harvard.edu account
The server
code.seas.harvard.edu
is SEAS code repository, and provides free Git repositories for students taking SEAS courses. You need an account oncode.seas.harvard.edu
.You can log in to code.seas at https://code.seas.harvard.edu/login. Use your FAS or SEAS username to log in.
More information about the SEAS code repository can be found at https://code.seas.harvard.edu/about, including a "how to" for first-time users.
1. Creating your CS 152 repository
You will create your own CS 152 repository by forking a repository that we provide. The explicit steps are as follows.
- Create a fork of the repository https://code.seas.harvard.edu/cs152-psets by clicking the "Clone Repository" button.
- Navigate to the code.seas website for your cloned repository. Click the Manage Read Access link. Add the group
cs152-2015-staff
as a reader. This is necessary for the grading system to work. - Clone your fork to some local directory.
- We need to tell git about the course staff's repository so you can keep up to date with new psets. Execute this in the local directory that contains your repository:
git remote add class git@code.seas.harvard.edu:cs152-psets/cs152-psets.git
2. Setting Up Your Submission Server Account
Create an account at the CS 152 submission server, at https://harvardcs.hotcrp.com/cs152/2015.
After creating your account, copy the "Clone & push urls" URL from your repository's code.seas.harvard.edu page into the submission server page's "repository" field. Your URL is probably of the form https://code.seas.harvard.edu/USERNAMEs-cs152-psets
, where USERNAME
is your code.seas
username.
3. Starting your assignment
You will need to keep your fork of our CS 152 repository up to date as we release additional material for new assignments. So before you start on a problem set you should always execute
git pull class master
Depending on your git configuration you might merge or rebase. The default, I believe, is to merge. The merge commit message doesn't matter.
4. Submitting Your Solutions
Name your solutions file solutions.pdf
and place it into the appropriate pset directory (i.e. for assignment 3 place it in the directory named pset3
).
To commit your solutions execute these commands:
cd /path/to/your/repository/psetN
git add solutions.pdf
git commit -m "Finished assignment N! I am so good!"
git push origin master:master
Warning!
This is our first time using this system. There will probably be bugs. Generally, don't trust the submission server, trust whatever the course staff states. There are fields for grades on the submission server. We may or may not use these fields. We'll keep you abreast of the plan.