我刚刚升级到Visual Studio 2013并希望使用内置的git功能.
我有一个本地git存储库 - 有各种分支和历史 - 我和其他同事一起愉快地使用远程TFS git存储库.
在VS2013中,我可以看到本地存储库和交换机分支,提交,推送等,但是当我连接到团队项目时,它没有分支,也没有与本地存储库的连接.
我可以将远程克隆到新的本地文件夹,但不知道如何将现有文件夹链接到它.
这一切都与Windows的GitHub应用程序一起使用,但VS2013工具似乎不喜欢它.
有任何想法吗?
我知道这是一个老问题,但它出现在我的Google搜索中......
如果您的源代码尚未包含在TFS中,则需要克隆空TFS项目(使用Visual Studio),然后从其他仓库中提取代码并将其推送到TFS(Daniel的答案).
如果您的源代码已经在TFS中,但Visual Studio没有将您现有的本地git仓库与TFS项目相关联......
在Visual Studio中,连接到TFS(即在团队资源管理器窗口中,连接到TFS项目.您应该能够查看工作项等,但它会说您需要在本地克隆项目.现在,去到文件菜单 - >打开 - >项目/解决方案,找到并打开本地git仓库中的解决方案文件.如果一切正常,Visual Studio将保持您仍然连接到您的TFS项目,您的解决方案将打开,并且它应该在将来记住它(所以它不应再告诉你必须克隆它).
另一方面,如果在打开解决方案时Visual Studio将您从TFS项目中断开(如果您要重新连接到TFS,它会关闭解决方案),这意味着它不认为它们是同一个团队项目.最有可能的原因是,服务器URL不是100%相同.这可能是两种简单的方法,因为您可能使用不同的主机名,也可能是'http:'vs'https:'.
通过git remote -v show
在本地仓库中执行a 来仔细检查,并将URL与您在连接到TFS时在VS中使用的URL进行比较.除了域名,请确保两者都使用"http"或两者都是"https"(我只是遇到了这个问题并意识到我在Visual Studio中使用了'https',但是当我之前在git中克隆了repo时'http' ).如果它们不同,那么修复它.
要更新本地git仓库中的URL:
git remote set-url REMOTE_NAME REMOTE_URL
(替换REMOTE_NAME的遥控器名称和REMOTE_URL的网址)
(或者您可以.git\config
在文本编辑器中作弊和打开文件并直接编辑URL)
在Visual Studio中重新打开解决方案,看看它是否使您保持与TFS的连接.一旦Visual Studio看到它们是相同的服务器URL,它应该记住它,所以当你使用团队资源管理器连接到TFS项目时,它不应该说你需要首先克隆它,并且应该出现解决方案文件的快捷方式(虽然在VS 2015中,当我在解决方案快捷方式发生变化之前切换项目时,我经常需要单击团队资源管理器顶部的刷新按钮).