These are from my limited knowledge and research.
Options for minimal functionality
inside the svn project directory emacs -nw -f vc-root-diff ->
C-c C-e for opening multiple diff in ediff. I actualy think this is not bad. Can't I skip the vc-root-diff step in any way? ediff-directory-revisions doesn't quite do the trick. An alternative way is using ...
I use psvn.el.
You will have to download and place this file into a folder which is in the search path of your Emacs:
(add-to-list 'load-path "~/.emacs.d/lisp")
Further you will have to compile this file to an .elc file.
If you run svn-status and select the root of your SVN checked out folder, you will get a nice overview in a separate buffer (*svn-status*)...
I came up with something like this.
(defun vc-status ()
(let ((backend (vc-responsible-backend default-directory)))
(cond ((equal 'Git backend) (magit-status))
((equal 'Hg backend) (ahg-status)))))
As @djangoliv has mentioned, M-x vc-revert works (C-x v u on Emacs 24.5.1).
When doing it over a file on a *vc-dir* buffer (opened by vc-directory command), another buffer with the differences is opened and a prompt message appears in the mini-buffer to confirm it.
Just like this image: