0

我正在重新组织我在视觉工作室中的项目。我有一些.cpp/.h文件要物理移动到子目录中。A 想同时进行以下行为:

  • 文件在文件系统上移动
  • SVN 工作副本数据库更新(保留历史)
  • Visual Studio 项目文件更新

额外的好处会很好,比如:

  • 更新#include引用文件的指令。

有什么解决办法吗?最好的解决方法?

4

2 回答 2

2

对于软件开发人员来说,这是众所周知的先有鸡还是先有蛋的困境:

  • 您是否首先在 Visual Studio 中移动/重命名文件,然后返回 Windows 资源管理器并更正所有应该重命名/移动的添加/删除?
  • 或者您是否在 Windows 资源管理器中重命名/移动文件,然后在 Visual Studio 中清理所有引入的编译错误?

您已经有了解决方案!如果没有 AnkhSVN,如果您在 Visual Studio 中进行文件操作,您已经获得了两个要求:更新 VS 项目和文件系统同步。但是,安装 AnkhSVN 后,您还会得到第三个要求:它还可以进行必要的 SVN 同步。您剩下要做的就是提交。

于 2012-09-14T02:40:11.347 回答
1

我在 Google 搜索的缓存页面中找到了以下描述:

在 Windows 资源管理器中,右键单击文件并将其从旧位置拖到新位置,然后从上下文菜单中选择“SVN 移动版本化项目”。这不仅会移动实际文件本身,还会确保在您签入更改后所有文件历史记录都保留在其中。回到 Visual Studio,使用 VS2010 中的解决方案资源管理器在其旧位置“从项目中排除”该文件的(现在丢失的)副本,然后在其新位置“包含在项目中”该文件。您可能需要在解决方案资源管理器中刷新视图和/或通过单击顶部的“显示所有文件”图标(刷新图标旁边)确保您正在查看所有文件,以便查看这些文件。

在您更新命名空间以反映新位置后,我建议您在尝试编译之前使用全局查找和替换,这样可以省去很多麻烦。

希望这可以帮助。

于 2012-09-13T17:45:15.350 回答