Subversion Access
Unix/Linux Machines
Initial Checkout
First you will need to get Subversion installed on the machine. For Ubuntu machines, run:
~> sudo apt-get install subversion
To checkout the repository (USERNAME is your Wiki username and REPOSITORY is the name of the repository, such as public, group, cs224, etc.):
~> svn checkout --username USERNAME https://grape.ics.uci.edu/svn/REPOSITORY
Error validating server certificate for 'https://grape.ics.uci.edu:443':
- The certificate is not issued by a trusted authority. Use the
fingerprint to validate the certificate manually!
Certificate information:
- Hostname: grape.ics.uci.edu
- Valid: from Sat, 12 May 2007 01:25:48 GMT until Sun, 11 May 2008 01:25:48 GMT
- Issuer: Information and Computer Sciences, University of California, Irvine, Irvine, California, US
- Fingerprint: cb:3e:7d:16:1d:c5:ae:e0:a5:07:00:c2:4c:f2:f3:01:f8:4b:c7:ff
(R)eject, accept (t)emporarily or accept (p)ermanently? p
Authentication realm: <https://grape.ics.uci.edu:443> Chen Li -- REPOSITORY
Password for 'USERNAME':
Checked out revision 0.
If the current Unix/Linux username is the same as the SVN username, you don't need the --username option. Keep in mind that the authentication credentials are cached on the local disk. More info here http://svnbook.red-bean.com/nightly/en/svn.tour.initial.html#svn.tour.initial.disabling-password-caching
Quick Start
-
Add file/directory (changes will take effect after commit):
~> svn add file/directory_name
-
Commit changes in the current directory (please specify commit messages as they are useful for file history):
~> svn commit -m "log message"
-
Update the current directory:
~> svn update
-
Remove file/directory (changes will take effect after commit):
~> svn remove file/directory_name
-
Move/Rename file/directory (relative paths are OK; changes will take effect after commit):
~> svn move ond_file/directory new_file/directory
Windows Machines
Initial Checkout
First you will need to install TortoiseSVN on the machine:
- Download and install TortoiseSVN from: http://tortoisesvn.net/downloads
(leave all options as default)
- Restart the computer (as prompted)
To checkout the repository (REPOSITORY is the name of the repository, such as public, group, cs224, etc.):
- Create a directory called REPOSITORY
- Right click on the directory and from the context menu select SVN Checkout...
- In URL of repository enter: https://grape.ics.uci.edu/svn/REPOSITORY
- Click OK
- It will prompt you for your username and password 3 times, but that is fine.
- Now the REPOSITORY directory has a special icon that show its status.
Quick Start
-
Add file/directory (changes will take effect after commit):
- Create the new file/directory
- Right click on the new file/directory and from the context menu select TortoiseSVN -> Add...
-
Commit changes in the current directory (please specify commit messages as they are useful for file history):
- Right click on the directory and from the context menu select SVN Commit
-
Update the current directory:
- Right click on the directory and from the context menu select SVN Update
-
Remove file/directory (changes will take effect after commit):
- Right click on the file/directory and from the context menu select TTortoiseSVN -> Delete
-
Move/Rename file/directory (changes will take effect after commit): http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-howto.html#tsvn-howto-move
Enabling Id Keyword Substitution
Unix/Linux
In order to enable the Id keyword for file foo.cc run the following command:
~> svn propset svn:keywords Id foo.cc
Windows
Using TortoiseSVN:
- Right click on the file you want to enable the Id keyword, and from the context menu select TortoiseSVN -> Properties
- In the newly opened window, click Add.
- In the second newly opened window, for the Property name select svn:keywords
- In the Property value box write "Id".
- Click OK to close the first window, and then OK again to close the second window.
Changes will take effect after commit.
Creating a snapshot using tagging
Sample command:
~> svn copy https://grape.ics.uci.edu/svn/REPOSITORY/papers/2007-foo/trunk \
https://grape.ics.uci.edu/svn/REPOSITORY/papers/2007-foo/tags/camera-ready \
-m "tagging the foo paper for the camera-ready version"
Important notices:
- The "tags" folder should have been created on the svn server before the command. If not, use the command "svn mkdir" to create it and then commit it.
- The "camera-ready" should not be created before, and it will be created by the command.
- This command will only change the tree structure on the svn server, NOT your local copy. So you need to do an "svn update" just after this command to change your local copy:
~> svn update
For more advanced features here is the subversion book: Subversion Book