[Subversion] is a free and open-source version control system. It keeps track of files and directories over time, and allows developers to track changes and revert to earlier changes if needed. Subversion provides a way to collaborate with several developers on one project.
The ECE/CIS department runs a server dedicated to providing subversion repositories,
svn.acad.ece.udel.edu has been retired, which was used for classes or other academic work.
If you need an svn repository as a purely academic user, [contact us].
This document discusses how to use subversion on our servers. For more detailed information, look at the [Subversion Book] which answers every question, is easy to read, and available for free online.
SVN authentication uses the already installed secure shell, SSH, to create a secure tunnel to access the repository. It is very easy to connect, as it uses your ECE/CIS account name and password, and the data is encrypted both ways.
For labstaff to create a repository for your use, we will need to know:
Request your repository using the [Help Request System]. Once it is set up, you can follow the instructions below to perform your Initial Repository Commit. Keep in mind that you will access the server using the following structure:
svn checkout svn+ssh://<username>@svn.eecis.udel.edu/repos/<repository>
where «username» is your ECE/CIS username, «repository» is the name of your repository.
Once you have checked out the repository once, you no longer need to type in the server name or username. Most commands like add, copy, merge, etc only take place locally until you commit the changes. Remember to only commit working code to the repository.
svn add <file/folder>- adds new file or folder to the repository (recursive)
svn delete <file/folder>- deletes the file from the repository and your local copy. Note: deleting your local copy alone will not remove it from the repository
svn copy <file/folder> <dest>- makes a copy of a file or folder - useful for tagging e.g.
svn cp trunk tags/project-0.1would copy the current code trunk to a tagged version
svn move <file/folder> <dest>- renames or moves a file or folder – useful when you want to move or rename something without explicitly del and then adding.
svn commit- asks for a message with a summary of what you’re committing, and uploads changes to the server
If you need extra help, be sure to search or read the [svn book]. The only think you must keep in mind is how you access the server (via a different port or using svn+ssh://), and use the correct host name. Additional questions specific to the setup of the server should be asked using the [Help Request System].