如何重构Visual Studio的项目布局并与VSS项目匹配?

时间:2010-07-01 20:51:43

标签: visual-studio-2010 project visual-sourcesafe solution

我正在从VS2008升级到VS2010并希望进行一些清理。我的主要解决方案在平面文件空间下有20个左右的项目。但是有一个项目分组(一些库,一些客户端程序,一些测试程序等),我想以适当的方式重新组织项目的物理磁盘布局。另外我的源代码控制是VSS(1)所以我想保持其文件结构与物理磁盘结构保持一致,并保留整个文件的历史记录。

那么有什么工具可以做到这一点?或者我最好将解决方案切割成碎片并在所需位置重新组装?

有一些SO问题谈论解决方案的最佳布局,但我没有看到告诉你如何从A到B

How to refactor large projects in visual studio

Project layout on disk in visual studio

例如,我想从“A”

开始
Solution
  |
  |-Project1
  |-Project2
  |-Project3
  |-Project4

到“B”

Solution
  |
  |-Group1
  |   |
  |   |-Project1
  |   |-Project2
  |
  |-Group2
      |
      |-Project3
      |-Project4

更新1

我应该提到我尝试了为“Group1”和“Group2”创建解决方案文件夹的明显方法,然后将项目拖到每个文件夹下的新位置。这适用于在VS2010中创建项目的逻辑组织,但不会更改磁盘上项目的物理位置。

更新2

我尝试从解决方案中删除项目,将其物理移动到磁盘上,然后将其添加到解决方案文件夹下。这实现了磁盘上的重定位,但项目记住了它最初在VSS中的位置并与这些文件相关联,而不是VS2010在VSS中构建新的项目结构

更新3

在考虑了一下后,我意识到我要求的更多是在VS2010中移动项目后如何使用物理磁盘布局重新调整VSS项目。修复此问题需要修改VSS项目布局和VS2010项目内部。所以我更新了标签和问题标题。

更新4 - 我的手动解决方案

好的,所以我制定了一个非常手动的方法来移动东西:

  1. 从VS2010中删除项目 溶液

  2. 将其移至磁盘上的新位置

  3. 从项目中删除所有与VSS相关的文件

  4. 在文本编辑器中打开项目文件并删除所有与VSS相关的条目(所有条目均以“Scc”开头)

  5. 将项目添加回解决方案并重新建立项目参考项目

  6. 检查解决方案和项目重新进入VSS并关闭VS2010

  7. 打开VSS并从VSS中的新项目位置删除仅代码文件

  8. 分享VSS中旧位置的文件

  9. 从VSS中的旧位置删除文件

  10. 删除VSS中的旧项目位置

  11. 这是最佳/唯一的方法吗?

    (1)是的我知道 - VSS。然而,在我使用它的情况下,它工作得很好,我没有把它弄错了,虽然我已经探索了其他选项,但我现在不打算改变。所以,请不要评论我应该如何转向源代码管理中的下一个最好的东西。如果这不能解决问题,那么:我实际上使用的是当前可用且受到积极支持的商业产品,该产品使用VSS作为后端,版本化数据存储!

1 个答案:

答案 0 :(得分:0)

听起来你大部分都在那里。您可以在文本编辑器中打开.sln文件,并手动更改。(vs | cs)proj文件的路径。这应该允许您使用您想要的结构。