代码之家  ›  专栏  ›  技术社区  ›  Brian Leeming

使用Visual Studio的多个副本,每个副本连接到不同的解决方案,并维护包含的单独更改集

  •  0
  • Brian Leeming  · 技术社区  · 8 年前

    我有两份Visual Studio 2017 open,每个窗口都使用单独的解决方案。这两个解决方案都签入到单独文件夹中的Team Foundation Server源代码管理中。例如,\Projects\Project1和\Projects\Project2。这两个项目之间没有共同的文件。

    当我使用Windows资源管理器将新文件添加到\Projects\Project1中时,它显示为 二者都 “排除的更改”下的Visual Studio副本。如果我通过Visual Studio添加该文件,则该文件似乎被添加为该解决方案(或项目)引用的文件,并显示在 包含的更改 对于那个项目。

    如何将Visual Studio配置为不将解决方案文件夹之外的任意文件添加到 检测 文件列表?

    在Visual Studio中,在“排除的更改”下,有一个“视图选项”链接,其中包含“显示解决方案更改”选项以及过滤器。但是,这两个选项都不能阻止包含属于其他项目的文件。就好像 检测 代码已设置为两个解决方案的父文件夹。

    2 回复  |  直到 8 年前
        1
  •  1
  •   PatrickLu-MSFT    8 年前

    由于您使用的是本地工作区,请首先检查以下文件检测机制:

    而本地工作区中的编辑可以通过 编辑文件、添加和删除仍然必须显式挂起。 然而 TFS版本控制的工作区扫描程序还检测到新的 可添加的文件, 以及丢失的文件和 要删除的候选文件夹。团队资源管理器挂起 “更改”页面有一个链接,显示检测到的添加数和 删除,以及 提供指向“升级候选更改”对话框的链接 可用于挂起real 添加或删除这些项目。 这称为提升候选人添加和/或删除,因为 它们变成了真正的待定更改。

    源链接: Server workspaces vs. local workspaces

    在您的情况下,由于您是使用Windows资源管理器添加文件,TFS将在排除的更改中添加文件,因此您需要手动将文件升级为真正的外接程序挂起的更改列表。但是,TFS无法判断排除列表应属于哪个Visual Studio。这就是为什么它在Visual Studio的两个副本中都显示为“排除的更改”下的条目。

    如何配置Visual Studio以不添加现有的任意文件 是否将解决方案文件夹外部的文件放入检测到的文件列表?

    对于本地工作区,没有办法做到这一点,除非您使用的是服务器工作区,但是 many limitations .

    另一种解决方法是配置具有多个TFS工作区的多个项目。您可以在main或dev分支下为不同的项目创建多个分支,并为每个分支创建不同的工作区。每个分支本身就是一个“项目”。

        2
  •  0
  •   Daniel Mann    8 年前

    就好像检测到的代码的根已设置为父级 两种解决方案的文件夹。

    对的听起来好像您有一个映射到单个根文件夹的TFVC工作区。如果将单个工作区映射到根文件夹,则该文件夹中的所有更改都将反映在团队资源管理器中。

    解决方案:使用多个工作区,每个项目一个工作区。如果您不熟悉TFVC中的工作区概念,那么有大量关于该主题的文档。

    推荐文章