Comp 311 Homework Submission Guide

We will use Rice's Subversion (SVN) repositories for all homework submissions in this course.

All students (regardless of enrollment in Comp311 vs Comp544) will submit their homework to the same repository using the course name comp311 URL.

In the past, Rice IT supported a web-based turnin command on the CLEAR cluster for accessing the Rice SVN repository, but the web interface is now defunct although you can still view some obsolete documentation for it such as https://docs.rice.edu/confluence/display/ITPUB/Turnin.  We strongly recommend that you use regular SVN commands from your personal machine to access the Rice SVN repository.  Nevertheless, you still have the option of using a command line version of the turnin command from CLEAR machines. Given the social distancing restrictions on campus this term, physical access to the CLEAR cluster will be very restricted.  So if you want to use the CLEAR cluster, you will probably need to login remotely to CLEAR.  In this context, GUI applications like DrRacket will run very slowly, so we do not recommend this approach.

To use regular SVN commands from your personal machine to submit your assignment, follow the Submitting your Homework from ...  instructions under Option A below. If you prefer using Git to SVN, you can try using the Subversion client built into Git (called git svn).

Option A: Using SVN commands for direct repository access

Preparing and Submitting your Homework from your Linux or Mac machine (Using SVN commands)

  1.  One time setup on your machine

    1. Make a new empty directory comp311 in your home directory and switch to that directory:
      mkdir comp311 
      cd comp311

    2. Use Subversion to check out your submission directory:
      svn checkout https://svn.rice.edu/r/comp311/turnin/«current-semester»/«your-net-id»
      E.g., for Fall 2017 and the NetID  "xyz99":
      https://svn.rice.edu/r/comp311/turnin/F17/xyz99


  2. To check the status of your current directory, run :
    svn status 
    This should show all your files that are added(A) / not added(?) / deleted(D) / modified (M) to the Subversion repository.

  3. To add folders/ files, use : 
    svn add «file_name» (without angle brackets)
    svn add «folder_name» (without angle brackets) – recursively adds all files in it
    This should show all files/ folders that have been added to the Repository (this is still a local copy)
    1. To delete folders/ files, use : 
      svn del «file_name» (without angle brackets)
      svn del «folder_name» (without angle brackets) – recursively adds all files in it
      This should show all files/ folders that have been deleted to the Repository (this is still a local copy)

  4. To commit your files, use: 
    svn ci -m "Some relevant message here"
    This should show all the files that have been added/ modified/ deleted ... followed by
    -- Transmitting file data.
    -- Committed revision «rev. no»

  5. And you have successfully added your folder/ files to the SVN repository. Visit your repository on the browser to confirm that all the file structure is intact.  Note that every saved version of your program is effectively a submission.  If you need a slip day send email to c

Submitting your homework from your Windows machine

If you are using Windows 10, we recommend that you either: 

  1. set up the Windows Subsystem for Linux (WSL), and then follow the steps above for using the SVN command on Linux; or
  2. install a standalone visual SVN client for Windows 10 like TortoiseSVN, which augments the menus embedded Windows File Explorer with SVN commands.  


I am following the second approach approach which is working well.  If you install WSL, there are two choices WSL 1.0, the original version which embeds the Linux file system inside the Windows 10 file system and implements the Linux kernel as a Windows 10 application built on top of Windows services.  The second choice is WSL 2.0, a new implementation based on OS virtualization (as done by VMWare, wIn my experience, the new version of WSL called WSL 2.0 works better than original version now called WSL 1.0.  Both are available for download from Microsoft and there are detailed instructions on the web on how to install either system.

You may also opt to use a standalone visual SVN client like TortoiseSVN.  I am currently using this approach on my Windows 10 machine since I am already familiar with running an SVN client on LInux.

Option B: Using the turnin command on CLEAR

One time Setup in Clear

  1. Login to CLEAR:
    ssh <your netid>@ssh.clear.rice.edu
    <your password>

  2. Make a new empty directory comp311 in your home directory and switch to that directory:
    mkdir comp311 
    cd comp311
     
  3. Use Subversion to check out your submission directory:
    svn checkout https://svn.rice.edu/r/comp311/turnin/«current-semester»/«your-net-id»
    E.g., for Fall 2017 and the NetID  "xyz99":
    https://svn.rice.edu/r/comp311/turnin/F17/xyz99


  4. You might be asked if you wish to store your password unencrypted. Always say no when asked this.
  5. Now you should have a folder named «your netid» in the comp311 directory you created.

Submitting your Homework from the Clear Network

  1. Make sure you are in your turnin directory.
    cd ~/comp311/<your netid>
     
  2. To check the status of your current directory, run :
    svn status 
    This should show all your files that are added(A) / not added(?) / deleted(D) / modified (M) to the Subversion repository.

  3. To add folders/ files, use : 
    svn add «file_name» (without angle brackets)
    svn add «folder_name» (without angle brackets) – recursively adds all files in it
    This should show all files/ folders that have been added to the Repository (this is still a local copy)

    1. To delete folders/ files, use : 
      svn del «file_name» (without angle brackets)
      svn del «folder_name» (without angle brackets) – recursively adds all files in it
      This should show all files/ folders that have been deleted to the Repository (this is still a local copy)

  4. To commit your files, use: 
    svn ci -m "Some relevant message here"
    This should show all the files that have been added/ modified/ deleted ... followed by
    -- Transmitting file data.
    -- Committed revision «rev. no»

  5. And you have successfully added your folder/ files to the SVN repository. Visit repo on the browser to confirm that all the file structure is intact.
  • No labels