Hi all,

I ran into the following error message with Subversion:
svn: Attempted to get textual contents of a *non*-file node

The issue, as pointed out by email thread [1], is that the directory being 
merged contains a file with the same name as the directory. I.e., there is 
/trunk/foo directory containing /trunk/foo/foo file.

However, even if I tried the suggestion from Ben Collins-Sussman, it didn't 
help: 'svn merge' still complained with the same error message. Reproduction 
script attached. Is there a way such projects can use 'svn merge' command?

I tried with Subversion trunk and, although the error message is different 
("svn: E160017: '/trunk/foo' is not a file"), the result is still the same. 
While it is a better message than the one in 1.6, it still does not explain 
why Subversion expects /trunk/foo to be a file for the following commands:

svn merge -c 4 ^/trunk/foo
svn merge -c 4 ^/trunk/foo .
svn merge ^/trunk/foo@3 ^/trunk/foo@4 .
svn merge -r 3:4 ^/trunk/foo .

As another side note, Subversion leaves behind a zero-sized temporary file 
created for the merge.

Regards,
Alexey.

[1] http://markmail.org/message/qqh3r6d4tcdyjnz2#query:
+page:1+mid:vcjektlfn37mxyld+state:results

Attachment: x.sh
Description: application/shellscript

Reply via email to