Refactoring tools allow programmers to change source code much quicker than before. However, the complexity of these changes cause versioning tools that operate at a file level to lose the history of components. This problem can be solved by semantic, operation-based SCM with persistent IDs. We propose that versioning tools be aware of the program entities and the refactoring operations. MolhadoRef uses these techniques to ensure that it never loses history.
Danny Dig, Kashif Manzoor, Tien N. Nguyen, Ralph J