代码之家  ›  专栏  ›  技术社区  ›  Peter M

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

  •  1
  • Peter M  · 技术社区  · 15 年前

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

    那么,什么样的工具可以做到这一点呢?还是我最好把解决方案切碎并重新组装到所需的位置?

    有几个这样的问题可以讨论解决方案的最佳布局,但我没有看到一个问题可以告诉您如何从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中的旧项目位置

    这是最好的/唯一的方法吗?

    (1)是的,我知道-vss。然而,在我使用它的环境中,它工作得非常好,我没有让它出错,虽然我已经探索了其他的选择,但我现在不打算改变。所以,请不要评论我应该如何在源代码管理中转到下一个最好的地方。如果这还不能帮你解决问题,那就这样做吧:我实际上使用了一个当前可用且得到积极支持的商业产品,它使用VSS作为后端,对数据存储进行版本控制!

    1 回复  |  直到 13 年前
        1
  •  0
  •   chris    15 年前

    听起来你是最棒的。您可以在文本编辑器中打开.sln文件,并手动更改到.(vs_cs)项目文件的路径。这应该允许您使用所需的结构。

    推荐文章