如何在Visual Studio中将项目从Git移动到TFS

40

我有一个项目已经进行了一段时间,但我无法让Git适用于它。我花了一天的时间来恢复丢失的代码,现在对Git已经不再感兴趣。

有人能告诉我如何将现有项目移动到TFVC中吗?我在Visual Studio Online帐户中设置了一个TFVC项目来执行此任务,但我无法找出如何更改源代码控制设置,以便该项目不再与Git相关联。

我目前正在VS 2013上开发。

非常感谢任何帮助!


4个回答

96

只需在根文件夹中删除.git文件夹(通常是隐藏的,例如通过Windows资源管理器),这将删除所有与git相关的内容。之后将代码添加到TFS项目中,并将其检入TFS。


10
请注意,这种方法仅检查您当前的代码,而不涉及任何历史记录。在您的情况下,这可能是可以接受的 :-). 如果您确实需要历史记录,请使用git-tf实用程序将您的代码和历史记录推送到TFVC存储库中。 - Richard Banks
感谢@RichardBanks提到这一点。这可能是一个重要的观点。 - Horizon_Net
1
不行,对我没有用。 我会删除.git文件夹,请求连接到我们公司的TFS服务器...此时VS2017会完全卸载解决方案并将我发送回VS主屏幕...一遍又一遍... - Mike Gledhill
你需要使用“文件” -> “源代码控制”->“将项目添加到源代码控制”来将项目添加到TFS中。如果你使用“文件”->“添加到源代码控制”,它会默认使用git。 - Robert Swilley

26

以下是步骤:

  1. 在解决方案资源管理器中右键点击项目名称。
  2. 在文件资源管理器中打开文件夹。
  3. 关闭Visual Studio。
  4. 删除名称中包含.git的文件夹和文件。
  5. 打开Visual Studio并加载项目。
  6. 选择“工具”->“选项”->“源代码控制”。
  7. 选择TFS(Team Foundation Server)。
  8. 切换到“团队资源管理器”选项卡。
  9. 连接到您的TFS服务器(假设您已经创建了一个存储库)。
  10. 选择正确的存储库。
  11. 在解决方案资源管理器中右键点击解决方案,选择“添加到源代码控制”。

2
对我有用。有一个名为.git的隐藏文件夹,不要忘记删除它。 - Roald
1
对我来说,需要打开VS,切换到TFS,建立与我的服务器的连接,然后打开项目。之前打开它会导致它连接到本地Git仓库。 - BBQ Singular
在我的VS 2019专业版上运行良好。像@Roald一样,文件夹.git恰好被隐藏了。 - Victor_Tlepshev
这个答案比最受欢迎和被接受的答案更有帮助。 - Vanity Slug

8

您不能直接从Git更改为TFVC,因为此选项绑定到团队项目。您需要创建一个新的团队项目,并确保选择TFVC作为提供程序。

  1. 连接到新的团队项目并创建本地工作区。
  2. 创建所需的文件夹结构。我建议使用$/newTP/MyPeoduct/Rx.x/。
  3. 将Git仓库中的文件(除了.git)复制到此位置。
  4. 打开解决方案,右键单击它并选择“添加到源代码控制”

现在您应该已经完成迁移...


1
谢谢,被接受的答案一点也没帮助到我,这个才是对的答案。 - MushyPeas
对我来说,这只是不断地回到 Git 源代码控制。我不得不从头开始重新创建解决方案。 - Pablo Boswell
1
这是针对不同问题的答案。原帖问如何在本地计算机上从Visual Studio中解除项目与源代码控制的绑定,以便将其上传到已正确配置的特定团队项目。此答案描述了如果您错误地配置了Team Foundation Server/VSTS实例以使用错误的源代码控制系统,则应该如何移动项目。 - Soren Bjornstad

3

VS2017 - 我遇到了上述列出的同样问题,经过删除项目文件夹根目录中的.git文件夹后,无论是从解决方案资源管理器还是文件菜单中点击“添加项目到源代码控制”,都只会创建一个新的.git。但是我成功地解决了这个问题。我删除了.git文件夹,进入“团队”并管理连接,打开我想要将其添加到的TFS项目。然后我转到“文件”->“源代码控制”->“添加解决方案到源代码控制”,它终于起作用了。


这是程序的步骤。 - Some_Yahoo
.git文件夹是一个隐藏的文件夹,对于没有看到它的人来说是不可见的。 - Roald

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接