2013-04-26 32 views
5

我已将Source Control (git)添加到我的项目中。我还在Team Foundation Service with git创建了一个项目。项目Team Foundation Service连接到我的Visual Studio。我有Enabled alternate credentials。参考文献Ref1Ref 2团队基金会服务git push时致命

当我跑;

git remote add origin https://yourname.visualstudio.com/DefaultCollection/_git/ProjectName 

然后:

git push origin master 

我得到这个:

用户名 'https://yourname.visualstudio.com':`

后我输入用户名:

Password for 'https://[email protected]@yourname.visualstudio.com': 

后我输入密码:

致命:https://yourname.visualstudio.com/DefaultCollection/ProjectName/info/refs 没有找到:你在服务器上运行的git更新服务器的信息?

我似乎无法找到解决方案,我怎么能使这个成功?

回答

5

您可以尝试克隆TFS Git仓库,并在其中添加源代码,而不是试图在本地创建仓库,并尝试添加远程仓库。

git clone会设置(希望)正确的远程,并应该让你推回你会添加和提交的任何代码。


Johan Leino指出in the comments为 “SourceTree + TFS Service + HTTPS: Login failed

我建立一个免费的TFS帐号来测试这一点,可以重现该问题。
我也可以使用标准安装的Git从http://git-scm.com复制它 - 看起来开箱即用,TFS不能用于标准Git。

但是,您可以通过在TFS中允许“替代身份验证凭证”使其工作。

  1. 点击在右上角您的用户名,并选择“我的模式”
  2. 选择“证书”选项卡
  3. 点击“启用备用凭据”
  4. 点击“设置”旁边的辅用户名并选择一个用户名未“@”字符
  5. 设置密码

4,5似乎是可选的,但我就是这么做的。
一旦我这样做了,我可以使用我的完整电子邮件作为用户名或我创建的替代用户名从TFS克隆。

似乎默认的TFS身份验证是某种仅适用于VS工具的自定义系统,只是启用这种替代身份验证可以与其他系统一起工作(为什么这不是默认设置,Microsoft?)

+0

该解决方案是可能的,我确实考虑过它,但应该是最不重要的选择,特别是如果您正在研究“多种解决方案或分区解决方案”。在引用或引用其他源的情况下移动源代码可能会引发更多路障。 – Komengem 2013-04-26 23:17:47

+0

@KomengeMwandila据我所知,这是比实际解决方案更多的解决方法。 – VonC 2013-04-26 23:19:13

+0

是的,我现在不得不使用它,所以我可以继续我想要做的事情。我给了你+1,但我会坚持几天将其标记为答案,看看有没有人可以弄清楚。 – Komengem 2013-04-26 23:24:06