CS 241: System Programming

Spring 2010

MWF
11:00am-11:50am

1404 Siebel Center

 

Home

Schedule and Lectures

 

 

Handin Instructions

Machine Problems (MPs):

All machine problems in CS 241 will be turned in through a version repository system called subversion (often abbreviated SVN). SVN is used on almost all major open source products, used at a number of large corporation, and is the most widely used open-source version control system available today. If you're interested in finding out more about SVN, the Wikipedia article is a good start.

There are a wide number of SVN clients on the Internet. The only client that will be officially supported by the CS 241 staff is the command line `svn` client provided on the csil-linux-ts1 and csil-linux-ts2 boxes. However, absolutely any client that "speaks" svn will be able to work.

Setting up SVN

  1. Log into any linux-based CS box via SSH (ex: csil-linux-ts1.cs.uiuc.edu).
  2. Create a directory for your cs241 subverison content. For example:
    netid|csil-linux-ts1|~|[1]% mkdir cs241
    netid|csil-linux-ts1|~|[2]% cd cs241
    netid|csil-linux-ts1|~/cs241|[3]% mkdir svn
    netid|csil-linux-ts1|~/cs241|[4]% cd svn
  3. Check out your CS 241 subversion directory with the following command:
    netid|csil-linux-ts1|~/cs241/svn|[5]% svn checkout https://csil-projects.cs.uiuc.edu/svn/sp10/cs241/NETID/
    Authentication realm: <https://csil-projects.cs.uiuc.edu:443> UIUC Active Directory
    Password for 'netid':
    Checked out revision ###.
    ... be sure to replace NETID with your UIUC NetID. The password required to access your subverison is your Active Directory (AD) password.
  4. At this time, you have a local copy of the latest contents of https://csil-projects.cs.uiuc.edu/svn/sp10/cs241/NETID/ inside your home directory. You can now locally modify these files and work on completing your MP or homework.

Submitting your Homeworks

  1. Before submitting your homework, it's a good idea to get the latest changes from the SVN server. To do so, run the following command:
    netid|csil-linux-ts1|~/cs241/svn|[6]% svn update
  2. You will find that you have a directory for every homework and MP, for example:
    netid|csil-linux-ts1|~/cs241/svn|[7]% ls
    mp1/  mp2/  hw1/  hw2/

    If you are submitting a homework, you will want to place your homework submission inside the folder assoicated with the aasignment name. For example, for hw2:
    netid|csil-linux-ts1|~/cs241/svn|[8]% cd hw2
    netid|csil-linux-ts1|~/cs241/svn/hw2|[9]%
  3. Once inside the folder for the homework you're submitting, you must name your homework your NETID.pdf. For example, if your NETID is jdoe1, the name of your file will be jdoe1.pdf. Once the file is in the directory, you will need to add the file to the svn.
    netid|csil-linux-ts1|~/cs241/svn/hw2|[6]% svn add NETID.pdf
    This does NOT submit your homework, you need to follow the next step to commit it.
  4. Once you are ready to submit your homework, type the following while in the directory containing the assignment (for HW2, it would be the ~/cs241/svn/hw2 directory):
    netid|csil-linux-ts1|~/cs241/svn/hw2|[7]% svn commit -m ""
    Committed revision ###.
    ...you may commit your homework as many times as you'd like. It's a great way to 'save' the work you've done so far. We will use the last submission you made for grading.
  5. Once a file has been committed to subversion, it has been submitted. You can verify the files on subversion by viewing your subversion though a browser by going to the following URL: https://csil-projects.cs.uiuc.edu/svn/sp10/cs241/NETID/ (remember to replace NETID with your UIUC NetID). A file cannot be graded if it has not been committed. Failure to commit a file on time will result in your HW being considered late. It is your responsibility to ensure all your work is committed by the due date.

    We will grade your latest version of the file that you have placed on subversion. Therefore, you may commit your HW as many times as you wish. However, the time of your submission will be based off your latest submission. Do not submit newer version of a previous HW unless you want to replace your previous submission! The latest timestamp will be used in the grading process and your turnin will be considered late if the latest commit timestamp is after the due date.

Submitting your MP

  1. Before beginning to work on an MP, it's a good idea to always get the latest changes from the SVN server. To update your local view, all you need to do is run:
    netid|csil-linux-ts1|~/cs241/svn|[6]% svn update
    ... you can now begin to wron on your MP. Notice that all the files included with the MP are already in your svn, so it should not be necessary to add any files. In fact, do not add any files unless it is directly written you are allowed to in the README. Doing so may result in your program not compiling with the autograder.
  2. Once you have made any changes and are ready to upload them back to the subversion server, run the following command from the active directory of your subverison (for SMP1, it would be the ~/cs241/svn/smp1 directory):
    netid|csil-linux-ts1|~/cs241/svn/smp1|[7]% svn commit -m ""
    Committed revision ###.
    ... you may commit your MP as many times as you'd like. It's a great way to 'save' the work you've done so far. We will use the last submission you made for the MP when we grade your MP.
  3. Once a file has been committed to subversion, it has been submitted. You can verify the files on subversion by viewing your subversion though a browser by going to the following URL: https://csil-projects.cs.uiuc.edu/svn/sp10/cs241/NETID/ (remember to replace NETID with your UIUC NetID). A file cannot be graded if it has not been committed. Failure to commit a file on time will result in your MP being considered late. It is your responsibility to ensure all your work is committed by the due date.

    We will grade your latest version of the file that you have placed on subversion. Therefore, you may commit your MP as many times as you wish. However, the time of your submission will be based off your latest submission. Do not submit newer version of a previous MP unless you want to replace your previous submission! The latest timestamp will be used in the grading process and your turnin will be considered late if the latest commit timestamp is after the due date.



Updated: January 12, 2010