The following commands demonstrate what seems to be a bug with --native-eol and externals. Two repositories are created. The first has an external link to the second. Text files with svn:eol-style=native are added in both repositories. When the first repository is exported with a non-default --native-eol option, the option is only applied to the text file in the first repository, not the one in the second which is referenced by svn:externals. On UNIX, I get the following output from the last command:
+ file exp/foo.txt exp/repo2/foo.txt exp/foo.txt: ASCII text, with CRLF line terminators exp/repo2/foo.txt: ASCII text Reproduces on UNIX with 1.6.12, and I am informed by a user on the users mailing list that it also reproduces with the current trunk version. If this is confirmed to be a bug, I would appreciate it if someone experienced could enter it into the SVN bug database for an eventual fix. Thanks. #!/bin/sh -x mkdir scratch; cd scratch svnadmin create /tmp/repo1 svnadmin create /tmp/repo2 svn co file:///tmp/repo1 repo1 svn co file:///tmp/repo2 repo2 (echo "this is a"; echo "text file") > foo.txt cp foo.txt repo1 cp foo.txt repo2 svn add repo1/foo.txt svn add repo2/foo.txt svn ps svn:eol-style native repo1/foo.txt svn ps svn:eol-style native repo2/foo.txt svn ps svn:externals 'file:///tmp/repo2 repo2' repo1 svn commit -m 'add text file and svn:externals' repo1 svn commit -m 'add text file' repo2 svn export --native-eol CRLF file:///tmp/repo1 exp file exp/foo.txt exp/repo2/foo.txt