如何在Visual Studio中重构而不丢失源代码控制历史记录?

jle*_*lew 8 version-control resharper refactoring perforce visual-studio

在重构应用程序时,使用ReSharper在Visual Studio 2010中移动/重命名源文件是一个巨大的帮助.Perforce源代码控制集成无法处理这些类型的更改,而不将其视为不相关的"从此处删除""添加到此处",这会打破历史链.我的问题是:

  1. 有没有办法强制Perforce插件首先做正确的事情?
  2. 如果没有,有没有办法在外部事后调和?(Perforce有没有办法识别已被移动并可能重命名并且内容更改有限的文件?)
  3. 是否有其他源代码控制产品可以透明地处理这个问题?

谢谢!

Pau*_*sik 2

您可能想查看Git。它没有像其他修订控制系统那样的特定于文件的挂起,因为修订历史记录不依赖于特定命名的文件。每次提交都是先前代码的差异,无论其中的文件如何。

为了与 Visual Studio 集成,您可能需要查看Git Extensions。对于 Explorer shell 集成,请参阅TortoiseGit

  • 对于使用 perforce 的人来说,切换到另一个 vcs 没有帮助。 (2认同)