General Turnin Information
For this class, students will use the OwlSpace system to turn in assignments.
Students are also encouraged to use svn
(subversion) to keep a cumulative record of the code they write for assignments. There are many resources available online if you want to learn more about subversion and its advanced features.
Since we are using the OwlSpace system for assignment submission, the use of svn is purely optional for students' benefit. With svn
students can always recover prior versions of the program that you have committed to the svn
repository.
File Names and Directories
For the first six weeks of this course, all programming assignments are written in the Scheme programming languages. All solutions to Scheme programming problems in an assignment should be placed in a single .ss
file. Similarly, all solutions to the free response questions in an assignment should be placed in the same .ss
file within block comment brackets.
For the remaining nine weeks of the course, programming assignments will be written in Java. These assignments all involve creating multiple files. To submit a multi-file assignment place those files in a separate directory (with a name as described below) and create a .zip
file for that directory.
- File names Files should be named with partner netIDs separated by a hyphen followed by a hyphen and the assignment abbreviation and either the .ss extension (for Scheme programming assignments requiring only a single file) or the .zip extension (for Java assignments consisting of multiple files). For example, the program file for
hw01
(in Scheme) submitted by idsgcw5217
andgmalecha
should be calledgcw5217-gmalecha-hw01.ss
. Similarly, the program file forhw07
consisting of a.java
program file and a.java
unit test file (with the file names specified in the assignment specifications) submitted by idsgcw5217
andgmalecha
should be calledgcw5217-gmalecha-hw07.zip
. - File locations Files should be in one partner's subversion directory. This directory should be kept relatively clean. If you need to make other temporary files and keep them under subversion, please place them in a subdirectory.
svn Repository Information
Repository Url: |
|||
---|---|---|---|
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="0951e846-8e99-4139-bf13-1fbf526b52ee"><ac:plain-text-body><![CDATA[ |
User Name: |
|
]]></ac:plain-text-body></ac:structured-macro> |
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="e7260c75-4f29-44ce-8dc4-35f208f03aae"><ac:plain-text-body><![CDATA[ |
Password: |
|
]]></ac:plain-text-body></ac:structured-macro> |
If you have questions about subversion, please contact one of the labbies and we will respond as soon as we can.
Running svn on Linux
While some graphical clients may exist for Linux, subversion's command line interface is simple and powerful and is the recommended method for accessing subversion from a machine running Linux.
- Install svn Installing subversion varies based on the linux distribution that you use. Simply check your package manager (
apt-get
,emerge
, etc.) for asubversion
orsvn
package and install it the same way that you install all other packages. - *Create a
comp211
directory. Adding a file to the repository To add a file to the repository, save the file under your repository directory (the
comp211/[netid]
directory created by thesvn checkout
command) and, from the directory that it is saved in, execute the command.svn add [filename]
- Committing a file to the server To save your work so that it can be recovered, you must send it to the server (called committing your work). To do this, from the
comp211
directory, executesvn commit -m "[message describing your change]"
- Updating the repository You can update your copy of the repository by executing
Any work that has been committed to the repository will be copied to your disk and, if there are conflicts, you will have to resolve them.
svn update
A typical subversion session might look something like this.
/tmp $ svn --username gmalecha co https://svn.rice.edu/r/comp211/ A comp211/gmalecha Checked out revision 21. /tmp $ cd comp211/gmalecha /tmp/comp211/gmalecha $ touch test.file /tmp/comp211/gmalecha $ svn add test.file A test.file /tmp/comp211/gmalecha $ cd .. /tmp/comp211 $ svn commit -m "Added a test file" Adding gmalecha/test.file Transmitting file data . Committed revision 22.
Running svn on Windows
You can download a Windows version of the command line client from the Subversion site. However, you will probably want to use TortoiseSVN, a graphical client for Windows.
Creating your directory
- Download and install the latest version of TortoiseSVN from: http://tortoisesvn.net/downloads
- Check out the repository In the folder where you want to keep your COMP 211 work, right click and select "SVN Checkout...":
!http::^hope.cs.rice.edu/twiki/pub/Teaching/SvnTurnin^windows_check_out.png|width=32"799", height=32"599", alt="The"<span class=!TortoiseSVN Check Out menu option""/> - Enter the repository URL Enter
https://svn.rice.edu/r/comp211/
as the repository URL.:
- Accept the certificate Click "Accept permanently":
- Enter your netID and password Enter your netID and password in the correct fields:
!http::^hope.cs.rice.edu/twiki/pub/Teaching/SvnTurnin^windows_password.png|width=32"336", height=32"231", alt="The"username/password dialog"!
Adding a file to your directory
Adding a file to the repository To add a file to the repository, save the file under your repository directory (the
comp211/[netid]
directory created when you checked out the repository). Then, right click on it and select "Add..." from the "SVN" menu.
!http::^hope.cs.rice.edu/twiki/pub/Teaching/SvnTurnin^windows_add.png|width=32"799", height=32"599", alt="The"<span class=!TortoiseSVN Add menu option""/>- Select the files to add Click "OK".
- Wait for the files to be added Click "OK".
- Committing a file to the server In order for other people (namely the graders) to view your local work, you must send it to the server (called committing your work). To do this, from the
comp211
directory, right click and select "SVN Commit...":
!http::^hope.cs.rice.edu/twiki/pub/Teaching/SvnTurnin^windows_commit.png|width=32"799", height=32"599", alt="The"<span class=!TortoiseSVN Commit menu option""/> - Enter a message Describe what changes you have made. Then click "OK":
- Wait for the files to be sent to the server Click "OK":
!http::^hope.cs.rice.edu/twiki/pub/Teaching/SvnTurnin^windows_committed.png|width=32"687", height=32"304", alt="The"Commit status dialog"!
Updating your directory
- Updating the repository You can update your copy of the repository right clicking in the
comp211
folder and selecting "SVN Update":
!http::^hope.cs.rice.edu/twiki/pub/Teaching/SvnTurnin^windows_update.png|width=32"799", height=32"599", alt="The"<span class=!TortoiseSVN Update menu option""/> - Wait for the files to synchronize Click "OK":
- Assuming that there were no conflicts (changes made to the same file), you now have an up-to-date copy of your repository.
Running svn in Mac
You can download a command line client for the Mac. After installing it, it works just like the Linux command line client. See the Linux section for further instructions.
Subversion Resources
- The
svn
Command Line Client Guide from COMP 314 http://www.owlnet.rice.edu/~comp314/svn.html
Access Permissions: (Please don't edit)
- Set ALLOWTOPICCHANGE = Main.TeachersComp211Group