将项目推送到远程 TFS 服务器时不支持身份验证错误 [英] Authentication not supported error while pushing project to remote TFS server

查看:70
本文介绍了将项目推送到远程 TFS 服务器时不支持身份验证错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试将我的代码从 Eclipse 推送到我的组织 TFS​​(Team Foundation Server)中的 git.我已经按照链接 https://www.visualstudio.com/en-us/docs/git/share-your-code-in-git-eclipse 来推送代码.但是在将分支推送到 tfs 服务器时出现错误.

I am trying to push my code from Eclipse to git in my organisation TFS(Team Foundation Server). I have followed the link https://www.visualstudio.com/en-us/docs/git/share-your-code-in-git-eclipse to push the code. But while pushing the branch to tfs server I am getting error.

    org.eclipse.jgit.errors.TransportException: http://***.*******.*******.***:****/tfs/****/****/**********/***/********: authentication not supported
    at org.eclipse.jgit.transport.TransportHttp.connect(TransportHttp.java:488)
    at org.eclipse.jgit.transport.TransportHttp.openPush(TransportHttp.java:387)
    at org.eclipse.jgit.transport.PushProcess.execute(PushProcess.java:154)
    at org.eclipse.jgit.transport.Transport.push(Transport.java:1200)
    at org.eclipse.egit.core.op.PushOperation.run(PushOperation.java:197)
    at org.eclipse.egit.ui.internal.push.ConfirmationPage$2.run(ConfirmationPage.java:209)
    at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:119)

我尝试了各种方法来找到完美的解决方案,但直到现在我还没有找到任何方法.谁能帮我这个.还想突出显示 tfs 远程存储库已经有一个 readme.md 文件,这会在推送代码时导致任何问题.如果是,任何人都可以提供可行的解决方案.

I have tried various ways to find a perfect solution but till now I have not found any. Can anyone help me with this. Also would like to highlight the tfs remote repository already has a readme.md file, would that cause any issue while pushing the code. If yes can anyone provide a viable solution.

注意:- 我需要可以在 Eclipse 中使用的解决方案来解决这个问题.

Note :- I need the solution which I can use in Eclipse to solve this issue.

推荐答案

解释了您问题的可能解决方案 常见问题解答:原因是 Eclipse 的 JGit 插件不支持 NTLM 身份验证,Team Explorer Everywhere(又名 TEE)通过 EGit 间接使用了该插件.TFS 2015 RTM 及更高版本的可能解决方案:

The possible solutions to your problem are explained in the FAQ: the reason is that NTLM authentication is not supported by the JGit plugin of Eclipse, which is used indirectly by Team Explorer Everywhere (aka TEE) by means of EGit. Possible solutions with TFS 2015 RTM and up:

  • 在 TFS 上启用 HTTP 基本身份验证(在 IIS 中);这是服务器端的更改;
  • 使用CNTLM克服JGit的限制,正确使用NTLM认证;这是您可以在 Eclipse 安装中进行的客户端修改;
  • 在您的 TFS 服务器上的 IIS 中启用 Kerberos 身份验证,如上述常见问题解答中所述;这已经是 TFS 2017+ 的默认设置.
  • enable HTTP Basic Authentication on TFS (within IIS); this is a server side change;
  • use CNTLM to overcome the limitation of JGit and use properly the NTLM authentication; this is a client side modification you could do on your Eclipse installation;
  • enable Kerberos authentication in IIS on your TFS server, as explained in the above mentioned FAQ as well; this is already the default on TFS 2017+.

使用 TFS 2017 RTW 及更高版本,您可以创建一个 个人访问令牌 范围至少为代码(读和写),然后你可以在Eclipse EGit配置中使用它代替你的密码.

With TFS 2017 RTW and up you could create a Personal Access Token with scope at least Code (read and write), then you could use it instead of your password in the Eclipse EGit configuration.

这篇关于将项目推送到远程 TFS 服务器时不支持身份验证错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆