The repository is divided primarily in terms of content complexity. There are different directories for each undergraduate year level, postgraduate, outreach and so on. The units currently on offer at Curtin have each been given a directory in the appropriate place. These unit directories contain further subdirectories for lecture notes, assignment questions and so on. Please follow the examples given and store new files in a way that would be easy for anyone else to interpret. This includes using hierarchical directory structures (instead of storing everything at the top level of a unit) and meaningful file names.
The CIRA teaching resource repository is intended to be as portable as possible. In order to provide the highest level of inter-system compatibility, we encourage all users to develop content using open file formats like OpenDocument, which is supported by the OpenOffice suite of applications, or a typesetting language like LaTeX. Ideally, editable documents will be stored in the repository and exported as PDF files when given to students. This further reduces the chance of formatting errors when a document reaches the hands of the end user.
The CIRA repository uses subversion to keep track of all changes. Access to the repository requires a username and password, which can be obtained from Aidan Hotan – a [dot] hotan [at] curtin [dot] edu [dot] au
To access the repository, you must “check out” a working version onto a local machine. This would typically be your desktop computer, but could easily be a laptop or whatever is most convenient for you. In order to do this, you must have a copy of the subversion software on your local machine. If you run Linux, you should be able to install the subversion command line tools using the package management system included in your distribution. If you run Windows, try TortiseSVN. MacOS X binaries can be obtained from CollabNet.
The teaching resource repository itself is hosted on cuppa03.cira.curtin.edu.au. In order to check out your working copy of the repository from a Linux shell you should change to the directory in which you want to store the repository and then run the following command:
> svn checkout svn://cuppa03.cira.curtin.edu.au/resources/trunk resources
This assumes that your username is the same as the username assigned to you in the subversion server configuration file. If it is different, then you can specify the subversion username with an additional argument:
> svn checkout --username yourname svn://cuppa03.cira.curtin.edu.au/resources/trunk resources
Once you have a copy of the repository on your local machine you may want to update it to catch any changes or new files added by other users, that is, to “sync” your directory with the current state of the repository.
First you should check it is safe to do so, that no files have been modified both by you and by someone else:
> svn status --show-updates
If it is safe to go ahead and update your copy of the repository, run:
You can add content to the repository by creating or moving a file into the appropriate directory and running the following command:
> svn add filename
You should see a list of the files you just added to the repository scroll up the terminal. You can add a whole new directory structure by adding the top level directory, subversion will recursively scan through the new directory and add all the files it contains.
Note that adding a new file or directory does not actually send it to the repository. In order to confirm your change and transmit the data, you must “commit” your changes using the following command:
> svn commit -m "Enter a comment describing the new files inside quotes here" filename
The comment argument is mandatory. If you forget it, subversion will open your default text editor and wait for you to save a new comment. Please use these comments wisely, they are important when tracking changes to the repository and provide a certain amount of accountability.
You can commit alterations to a file that already exists in the repository using the same command as above.
You may also want to run
svn status again to check you haven't missed any files.