Common Commands
Version information
$ svn info
See changed files
$ svn stat
See updated files
$ svn stat -u
Commit changes
$ svn commit -m "message" /path/to/file1 /path/to/file2 /path/to/file3
Undo changes
$ svn revert /path/to/file
Check out latest version
$ svn co svn://localhost/trunk/ /path/to/folder/
Check out old version
$ svn co -r 123 svn://localhost/trunk/ /path/to/folder/
Add file (need to commit after)
$ svn add /path/to/new/file
Delete file (need to commit after)
$ svn remove /path/to/file
Copy file (copy history from the file to the new one - need to commit after)
$ svn copy /path/to/file /path/to/newfile
Move file (retains history from the old file to the new one - need to commit after)
$ svn move /path/to/oldfile /path/to/newfile
See file changes
$ svn diff --diff-cmd /usr/bin/diff -x "-bB" /path/to/file
Other Commands
Ignore directories / files when they are recreated or keep changing (you may need to do an ‘svn update’ after this before you can commit)
$ svn propset svn:ignore "file.extension" directory
Merge changes into a directory
$ svn merge -r 123:234 svn://localhost/trunk/ /path/to/folder/
Compare branch against a directory - useful before merging ( dry run shows the results that would happen if you did a merge )
$ svn merge -r 123:456 svn://localhost/branches/branch /path/to/folder/ --dry-run
Switch to a different version
$ svn switch -r 123 svn://localhost/trunk/ /path/to/folder/
Edit a commit comment
$ svn propedit svn:log --revprop -r 123 svn://localhost/trunk --editor-cmd vi
See subversion history
$ svn log svn://localhost/trunk --stop-on-copy --verbose
Create a new repository
$ svnadmin create /home/svn_repository
$ cd /home
$ mkdir svn_repository
Import files into a repository
$ svn import /path/to/project svn://localhost/trunk -m "message"
Create a new branch
$ svn copy -r 123 svn://localhost/trunk svn://localhost/branches/name -m "message"