## Refactoring

One of the main feature of Subversion® is folder versioning. So it's strongly recommended to use for refactoring functions provided by SVN® itself. The Subversive plug-in provides the user such probability with its UI. But the user should be very accurate, because there are some facts that he should always remember:

- While refactoring the structure of the versioned folder is changed, so if it's not up-to-date the conflict while committing is inevitable. So the user must be sure, that he has updated the resource being refactored to the repository location revision. Remember that the folder is considered to be not up-to-date even if only its revision number on the repository is changed.
- Native SVN® clients have the limitations on the quantity of consecutive refactors of the same resources, so the user should commit his changes after each renaming of the resource.
- While working on the Win32 platform the case sensitivity is disabled, so if the user needs to rename his resource for example from "text.txt" to "Text.txt" he should do it on the repository and then update the changes.
- Eclipse is copying resource's meta-information, so it's strongly recommended to use 'Team>Copy to...' instead of standard Eclipse copy/paste operations.
- When the user deletes the folder it still exists on the file system and its icon is still visible in the package explorer but marked for deletion. It's physically deleted after committing the changes.