tags:

views:

55

answers:

2

Is there a way to diff two arbitrary revisions in psvn? I'd like to have possibility to get diff/ediff for a file in the svn-status window.

I only found svn-file-show-svn-diff which shows diff between a working copy and HEAD

+2  A: 

For a diff, press C-u before = (M-x svn-file-show-svn-diff), and it will interactively prompt you for a revision. At this point put in the revisions you like to compare in arb1:arb2 form. Then the svn-diff buffer will show the changes between arb1 and arb2 revisions in diff unified form.

For an ediff, the above unfortunately does not work and I believe it is not possible with the current svn-file-show-svn-ediff function, it seems you need to be in the svn-log buffer and on a file path line to make it work. First get into the svn-log buffer by pressing l on the desired file in the svn-status buffer. Then, press C-u then E (M-x svn-log-ediff-specific-revision). Then specify your arb1 and arb2 revisions in arb1:arb2 form.

Edit: added svn-log-ediff-specific-revision, from revision 40434 (2009-11-09).

piyo
In xemacs "C-u E" brought ediff session from *svn-status* without need to go to svn-log.
Vitali
You can do arbitrary revisions ediff with psvn on xemacs? Nice. Which psvn is this?I was talking about in GNU emacs, where C-u E still doesn't not give you two arbitrary revision comparison on the psvn version 40434, only a comparison between HEAD and one arbitrary.
piyo
My mistake. With C-u E psvn only allows to compare a working copy with an arbitrary revision. Not two arbitrary revisions
Vitali
A: 

C-x v l than select the 2 versions you want to diff and hit d

mathk