Can the Subversion client (svn) derefence symbolic links as if they were files?
- by Ryan B. Lynch
I have a directory on a Linux system that mostly contains symlinks to files on a different filesystem. I'd like to add the directory to a Subversion repository, dereferencing the symlinks in the process (treating them as the files they point to, rather than links). Generally, I'd like to be able to handle any working-copy operations with this behavior, but the 'svn add' command is where it starts, I think.
The SVN client utility doesn't appear to have any options related to symlink dereferencing in the working copy. I didn't find any references to this in the manual (http://svnbook.red-bean.com/en/1.5/index.html), either.
I found a poster on the SVN users mailing list who asked the same question but never received an answer, here:
http://markmail.org/message/ngchfnzlmm43yj7h
(That poster ended up using hard links instead of symlinks. That technique is not an option, in my case, because the real underlying files reside on a separate filesystem.)
I'm using Subversion v1.6.1 on Fedora 11.
For what it's worth, I know that there are alternative tools/techniques that could help approximate this behavior, but which I have to discard for various reasons. I've already considered [and dust-binned] these possibilities:
- a "union" mount, merging all of the the directories containing the real files, with the SVN working-copy directory as the "top" layer in the union;
- copying/moving the real files to the same filesystem as the SVN working-copy, and using hardlinks instead of symlinks;
- non-SVN version control systems.
These were all neat ideas, and I'm sure they are good solutions to other problems, but they won't work given the constraints of this environment and situation.