Page MenuHomePhabricator

diffusion - doesn't understand svn Replace operation
Open, Needs TriagePublic

Description

I'm getting the following exception when trying to view a page in differential:

Command failed with error #1!
COMMAND
svn --non-interactive --no-auth-cache --username 'xxxxx' --password 'xxxxx' cat 'svn://fr-svn/lib2/tags/20150123/test/basic_init.py@27843'

STDOUT
(empty)

STDERR
svn: warning: W160013: File not found: revision 27843, path '/lib2/tags/20150123/test/basic_init.py'
svn: E200009: Could not cat all targets because some targets don't exist
svn: E200009: Illegal target for the requested operation

Details:

  • The url for this revision is /rM27844
  • It looks like differential is looking for the file with the wrong revision number (27843 instead of 27844)
  • This commit was a tag, aka a copy from trunk to a new directory, but it was looks like it was invoked off the working copy (svn cp . ^/tags/20150123/). This makes the history a little wonky; it shows up as a copy of the base directory (trunk->20150123) as well as some of the individual files from the same base revision.

Let me know if there's more info that would be helpful.

Event Timeline

sshannin raised the priority of this task from to Needs Triage.
sshannin updated the task description. (Show Details)
sshannin added a subscriber: sshannin.

Can this be closed now? I don't think there's enough in here to reproduce.

I suspect it's due to the replace status code. Specifically, if a specific path is removed + added, it shows as different than a modify. When this is then copied, it looks like SVN is showing this code for the new path of the file too. See /rSVNTEST8.

As before, let me know if there's more info that would be helpful.

sshannin renamed this task from Differential looking at wrong revision #'s to diffusion - doesn't understand svn Replace operation.Mar 8 2017, 12:40 AM