2
votes

Does VisualSVN Server (a Windows application) support cheap copy as defined here http://svnbook.red-bean.com/en/1.8/svn.branchmerge.using.html

Cheap Copies

Subversion's repository has a special design. When you copy a directory, you don't need to worry about the repository growing huge—Subversion doesn't actually duplicate any data. Instead, it creates a new directory entry that points to an existing tree. If you're a Unix user, this is the same concept as a hard-link. From there, the copy is said to be “lazy”. That is, if you commit a change to one file within the copied directory, then only that file changes—the rest of the files continue to exist as links to the original files in the original directory ...

I don't know how the internals of a Unix based SVN server work, but I imagine it uses file system links, which I don't quite know the state of support on Windows. VisualSVN server requires Vista/Windows Server 2008, which I think supports links ... but I'm not 100% sure.

Can anyone clarify?

1
You are referring to SVNBook 1.0 which is VERY outdated. The current SVNBook version is 1.8: svnbook.red-bean.com/en/1.8 - bahrep
@bahrep thanks, I've updated the url in my question. - Walter Stabosz

1 Answers

1
votes

Yes, repositories on VisualSVN Server support cheap copies. In fact, each Subversion repository (regardless of filesystem or OS) supports cheap copies, because its a concept of Subversion repository design. The concept allows you to create copies, branches and tags immediately and they don't take any additional storage space.

SVNBook tries to explain cheap copies concept comparing it with *nix symlinks, so I guess that this is the root of the confusion here. While copies in SVN repository have some similarities with symlinks concept, they do not depend on *nix symlinks at all. When discussing cheap copies topic, *nix symlink are brought just to illustrate how cheap copies concept works.