68

我有一个 vs.net 项目,经过一些重构,修改了项目的名称。如何在 TFS 控制的项目和解决方案下轻松重命名底层 Windows 文件夹名称以匹配此新项目名称?
请注意,我曾经能够通过使用 SourceSafe 在后台摆弄一些东西来做到...

4

6 回答 6

174
  1. 入文件夹中的所有未决更改,并确保所有其他团队成员也这样做。
  2. 确保您的工作目录中有该文件夹的副本(否则,您将无法在下一步的源代码管理资源管理器中重命名该文件夹)。如果您还没有文件夹,请获取文件夹的最新版本以获取副本。
  3. 关闭解决方案
  4. 重命名Source Control Explorer中的文件夹。这会将源代码管理中跟踪的所有文件从文件系统上的原始文件夹移动到新文件夹。请注意,源代码管理未跟踪的文件将保留在原始文件夹中 - 一旦您确认那里没有您需要的文件,您可能希望删除此文件夹。
  5. 打开解决方案No并在提示从源代码管理中获取新添加到解决方案的项目时选择“ ”。您将收到一条警告,指出无法加载解决方案中的项目之一。
  6. 解决方案资源管理器中选择项目

    请注意,它将变灰并标记为“不可用”

  7. 打开“属性”窗格。
  8. 直接或使用“ ...”按钮 编辑“文件路径”属性。

    另请注意,此属性仅在 Visual Studio 2010 中可编辑。在较新版本的 Visual Studio 中,您将需要手动编辑解决方案文件中的项目路径。

  9. 右键单击解决方案探索r 中的项目,然后从上下文菜单中选择重新加载项目。如果您收到一条错误消息,指出无法从原始文件夹加载项目,请尝试关闭解决方案,删除与解决方案文件位于同一文件夹中的 suo 文件,然后重新打开解决方案。
  10. 将更改作为单个变更集签入
  11. 让其他团队成员为解决方案“获取最新版本”(右键单击解决方案资源管理器中的解决方案,然后从上下文菜单中选择“获取最新版本”。

注意:涉及删除项目然后将项目重新添加到解决方案的其他建议解决方案将破坏项目引用。

如果您执行这些步骤,那么您还可以考虑重命名以下内容以适应。

  1. 项目文件
  2. 默认/根命名空间
  3. 集会

此外,请考虑修改以下程序集属性的值。

  1. AssemblyProductAttribute
  2. AssemblyDescriptionAttribute
  3. AssemblyTitleAttribute
于 2012-06-01T15:50:39.883 回答
20

只需右键单击 TFS 中的文件夹,然后选择重命名。提交重命名后,TFS 将为您在磁盘上进行更改。正如 Kevin 指出的那样,您需要确保所有内容都已签入,因为 TFS 将删除旧文件夹及其中的所有内容,并拉下包含当前文件版本的重命名文件夹。

最后一点:您不能重命名尚未映射的文件夹,或者您尚未从中“获取”的文件夹。我不知道为什么,但在这些情况下 TFS 会禁用重命名选项。

如果我没记错的话,至少那是发生在我身上的事。

于 2008-09-08T14:06:23.767 回答
1

您可以在 TFS 中重命名项目(.Xproj 文件和项目文件夹),删除本地文件夹结构及其所有内容,然后获取项目的最新信息。所有这一切都取决于您的源存储库的概念是完全最新且可编译的。

于 2008-09-08T04:09:17.447 回答
1

以下是在带有 TFS 的 Visual Studio 2008 中对我有用的步骤:

  1. 关闭解决方案。
  2. 在源代码管理资源管理器中重命名项目文件夹(右键单击 -> 重命名)。这会将代码复制到新命名的文件夹中。
  3. 打开解决方案,然后在解决方案资源管理器中,删除旧文件夹/项目并添加新的、正确命名的重复项,(在旧项目上,右键单击 -> 删除,然后在解决方案上,右键单击 -> 添加 ->现有项目...)

或者:在第 2 步之后,您可以在文本编辑器中打开解决方案的 .sln 文件,然后手动更新项目文件夹名称。如果您这样做,您可能需要手动签出 .sln 文件以确保您的更改将被签入(<-重要!)。

于 2008-12-18T21:18:01.353 回答
1

我的特定配置是 VS2010 连接到 TFS2008。我在这里尝试了其他一些解决方案,但遇到了问题。我发现以下内容对我有用:-

  1. 从解决方案中删除要重命名的文件夹中的项目
  2. 保存解决方案
  3. 在TFS 源代码管理中重命名包含已删除项目的文件夹(这会在硬盘上本地重命名)
  4. 从新位置将项目添加回解决方案
  5. 保存解决方案
  6. 致力于源代码控制

现在,您将重命名文件夹并重新映射所有在一个变更集下提交的解决方案。

于 2011-09-01T16:45:23.060 回答
1

对于Visual Studio 2019ASP.NET Core 2.2,我不得不稍微修改 Scott Munro 的回答。这对我有用:

开始之前:签入所有更改并备份您的解决方案。

  1. 使用解决方案资源管理器重命名项目(即右键单击项目并单击重命名)。
  2. 在Source Control Explorer中重命名项目文件夹。
  3. 在文本编辑器中打开解决方案的.sln文件,并修复文件路径。(将所有对“OldProjectName”的引用替换为“NewProjectName”)。
  4. 在 Visual Studio 中重新加载您的解决方案。
  5. 使用新项目名称查找并替换所有旧命名空间。
  6. 完毕。签入更改。

我必须先执行第 1 步,以便在第 3 步中修复文件路径后加载项目。

于 2020-02-17T17:06:39.760 回答