svn diff — Display the differences between two paths.
svn diff [-r N[:M]] [TARGET...]
svn diff URL1[@N] URL2[@M]
Display the differences between two paths. Each TARGET can be either a working copy path or URL. If no TARGET is specified, a value of '.' is assumed.
If TARGET is a URL, then revs N and M must be given via the --revision.
If TARGET is a working copy path, then the --revision switch means:
The server compares TARGET@N and TARGET@M.
The client compares TARGET@N against working copy.
The client compares base and working copies of TARGET.
If the alternate syntax is used, the server compares URL1 and URL2 at revisions N and M respectively. If either N or M are omitted, a value of HEAD is assumed.
di
Nothing
For obtaining differences against anything but BASE revision in your working copy
--revision (-r) REV --extensions (-x) "ARGS" --non-recursive (-N) --diff-cmd CMD --username USER --password PASS --no-auth-cache --non-interactive --no-diff-deleted
Compare BASE and your working copy (one of the most popular uses of svn diff):
$ svn diff COMMITTERS Index: COMMITTERS =================================================================== --- COMMITTERS (revision 4404) +++ COMMITTERS (working copy)
See how your working copy's modifications compare against an older revision:
$ svn diff -r 3900 COMMITTERS Index: COMMITTERS =================================================================== --- COMMITTERS (revision 3900) +++ COMMITTERS (working copy)
Compare revision 3000 to revision 3500 using '@' syntax:
$ svn diff http://svn.collab.net/repos/svn/trunk/COMMITTERS@3000 http://svn.collab.net/repos/svn/trunk/COMMITTERS@3500 Index: COMMITTERS =================================================================== --- COMMITTERS (revision 3000) +++ COMMITTERS (revision 3500) …
Compare revision 3000 to revision 3500 using range notation (you only pass the one URL in this case):
$ svn diff -r 3000:3500 http://svn.collab.net/repos/svn/trunk/COMMITTERS Index: COMMITTERS =================================================================== --- COMMITTERS (revision 3000) +++ COMMITTERS (revision 3500)
If you have a working copy, you can obtain the differences without typing in the long URLs:
$ svn diff -r 3000:3500 COMMITTERS Index: COMMITTERS =================================================================== --- COMMITTERS (revision 3000) +++ COMMITTERS (revision 3500)
Use --diff-cmd CMD -x to pass arguments directly to the external diff program
svn diff --diff-cmd /usr/bin/diff -x "-i -b" COMMITTERS Index: COMMITTERS =================================================================== 0a1,2 > This is a test >