CPS 124/296.3
Fall 2001

Submitting Your Projects

All projects will be submitted electronically. You are responsible for ensuring that all files are submitted on time.

You should submit only code, text, HTML, or PDF, and possibly image files (gif or jpeg). You are free to use any program available to complete your work, however, you are responsible for converting it into one of the standard formats listed above (most current programs can save or print files to a variety of alternate formats). In general, every program submitted should include a README file in addition to your source code files.

Submit Command

When you are done with your project and are confident it is satisfactory, you should submit it electronically.  To submit a project, type the following Unix command at your terminal prompt, where project_name will typically be provided on the project page:
submit_cps124 <project_name> <project_files>
You should get a message printed in your terminal window if the submit was successful. If you receive an error message when you run this command, it indicates a problem outside of your control.  Please mail the professor in this case, including both the command you typed and the error message it printed. Without these two pieces of information, we cannot provide assistance. (Note, if you get an error message from your terminal, "command not found", then you will need to type out the full command name /afs/acpub/project/cps/bin/submit_cps124 on acpub, or /usr/local/bin/submit_cps124 on cps).

You can check the status of your submissions at any time by typing submit <project_name> with no additional arguments. This should show you a list of the files you submitted and when you submitted them.

You may submit an assignment as many times as necessary, but only the files included in the last submission will be graded. Thus, you should always submit all your files -- even if they have not changed since a previous submission.

Tarring your Submission

When working on large programs, possibly in multiple directories, please submit all files in a single compressed tar file. Your tar file should contain a directory named project_name with all code files (.cpp and .h files), any relevant documentation about your project, and a Makefile that can be easily modified to work on the CS system (see a sample Makefile). In particular, it should not contain backup files, executables, or other binary files (use the commands make clean and rmbak to remove extraneous files). Points may be taken off if it is hard to determine which files are necessary to build the final version of your program.

Below is a command to create a tar file, see the tar help page for more details.

gtar cvzf project_name.tgz project_directory
assuming you are in the directory above project_directory when invoking tar and that the directory project_directory contains only files you want to submit.

Releasing your Submission

When you are done with your project and are confident it is satisfactorily complete, you should submit it electronically. To submit a project, you should release it within SourceForge, using the following steps:
  1. Upload your tar file by anonymous FTP by typing
           ftp sourceforge.cs.duke.edu
    Fill in anonymous when it prompts for a user name and nothing when it prompts for the password. Once at the FTP prompt, type
           cd /incoming
           put project_name.tgz
           quit
  2. Go back to the 'Project Admin' page for your project (only project admins can do this), and click on 'Release New File'. The tar file file you uploaded will appear in the selection box. Pick it and click 'Submit'. Choose a version number and description for your file and click 'Submit' again.
  3. You can find your own (and other people's) released files by clicking on the 'Downloads' icon on a project's central page, or by clicking on 'New Releases' in the upper-left corner of any SourceForge page.

All released files are time stamped when they are submitted. We will use these time stamps to verify your program submission is on time. You may submit an assignment as many times as necessary, but only the files included in the last submission will be graded. Thus, you should always submit all your files -- even if they have not changed since a previous submission.

Feedback?