


The negative side effect of this can be seen in this simple scenario: The fact that the new file is a copy is the reason you get support for the previous history. Subversion implements a move/rename as a copy followed by a delete. So what are the features that Subversion does not provide? For starters, you might want to take a look at issue # 898 in the Subversion issue tracker. If these are the sort of features you are after, then Subversion provides them very well. Likewise, if I want to get a copy of what a file looked like last year, I can do so without needing to know what the file was named last year. If I rename a file, commit it and then examine its history, I can see the history of the file all the way back to when it was created, across any move boundaries. The support for move/rename in Subversion is really about maintaining history. The support for move/rename in Subversion is often not what user's expect it to be. However, I'd also say that even more people mention wanting improved support for move/rename as the big reason for switching.
