我刚刚使用 EGit 从 Eclipse Juno 连接到 GIT,并成功克隆了某个远程存储库。在克隆过程中,我输入了我的 Github 用户名和密码,但选择不保存它们。
然后我尝试“从上游获取”。我收到了这个错误:
https://github.com/biunlp/nlp-lab.git:未授权
我没有机会输入我的用户名和密码......
这很奇怪,因为我连接到这个存储库是为了克隆......
Remotes > origin > <your push url>
”(来自用户指南 - 资源上下文菜单)
如果您想访问同一服务器上的多个存储库而不多次提供相同的凭据,您可以使用.netrc。这样,eGit 将使用您提供的配置。
.netrc
(_netrc
在 Windows 中)的文本文件。机器 my.server1.com 登录你的用户名 密码 yourPassword 机器 my.server2.com 登录你的用户名 密码 yourPassword
Stash 文档包含有关 .netrc 的更多信息
安全问题以这种方式使用 .netrc 的问题是密码以纯文本形式可见。请参阅Stackoverflow 中的此答案以解决该问题。
你可以试试:
eclipse/myeclipse > 菜单
窗口 > 首选项 > 常规 > 安全 >
内容 > 点击“删除” > 确定
如果您在 GitHub 上使用两因素身份验证,即使您使用正确的用户名和密码,也会返回“未授权”错误。这可以通过生成个人访问令牌来解决。
生成安全访问令牌后,我们将使用它而不是密码。确保在完成之前不要离开页面,因为一旦离开页面,您将永远不会再看到它(幸运的是它可以重新生成,但使用之前生成的令牌的任何内容都将停止验证)。
这假设您已成功安装 EGit 并且您已成功克隆了一个存储库。
Personal access tokens
。Generate new token
。选择您希望此令牌能够使用的范围,然后生成它。9731f5cf519e9abb53e6ba9f5134075438944888
别担心,这是无效的)。Window > Show View > Other...
. 在 下Git
,选择Git Repositories
。(repository name) > Remotes > origin
.Change Credentials...
。输入您的用户名User
,以及您的安全访问令牌Password
。当我在远程存储库上更改密码时,我遇到了类似的问题。
这是我在 Mac 上的 Eclipse 上修复它的方法:
重要提示:这些说明具有清除所有密码和其他安全信息的副作用。我对此很好,但在您遵循这些说明之前,您需要考虑这一点。
这对我有用:
转到 Git 配置文件-> 设置-> 开发人员设置-> 个人访问令牌如果有任何现有令牌,则删除并生成新令牌 [提供注释,指定天数并检查回购] -> 复制生成的新令牌转到 eclipse 和现在当出现相同的登录提示时,尝试提供生成的个人令牌作为密码而不是 Git 密码。