自我 - 未经授权

Ere*_*evi 44 eclipse git egit

我刚刚使用EGit从Eclipse Juno连接到GIT,并成功克隆了某个远程存储库.在克隆过程中,我输入了我的Github用户名和密码,但选择不保存它们.

然后我试着"从上游获取".我收到了这个错误:

https://github.com/biunlp/nlp-lab.git: not authorized

我没有机会输入我的用户名和密码......

这很奇怪,因为我连接到这个存储库以便克隆...

Von*_*onC 67

A.为每个远程单独指定凭据

  1. 打开Git存储库视图,
  2. 打开" Remotes > origin > <your push url>"
  3. 点击"更改凭据..."

推菜单

(来自用户指南 - 资源上下文菜单)

B.为每台服务器指定凭据

如果要在同一服务器上访问多个存储库而不多次提供相同的凭据,则可以使用.netrc.有了这个,eGit将使用您提供的配置.

  1. 在用户主目录中创建一个名为.netrc(_netrc在Windows中)的文本文件.
  2. 以这种形式向文件添加内容:
    machine my.server1.com
    login yourUserName
    password yourPassword

    machine my.server2.com
    login yourUserName
    password yourPassword

Stash文档包含有关.netrc的更多信息

安全问题以这种方式使用.netrc的问题是密码以纯文本形式显示.请参阅Stackoverflow中的此答案以解决该问题.

  • 我遇到了同样的问题,但是当我禁用 2 因素身份验证时,一切正常。有人有这个吗? (2认同)
  • @george_h是的.您显然可以使用[个人访问令牌](https://help.github.com/articles/creating-an-access-token-for-command-line-use/)通过HTTPS使用EGit.~~我正在尝试自己处理细节.~~我刚刚想出来并会添加一个答案. (2认同)

小智 42

你可以试试:

eclipse/myeclipse>菜单

窗口>首选项>常规>安全性>

内容>点击"删除">确定


gku*_*bed 18

如果您在GitHub上使用双因素身份验证,即使您使用正确的用户名和密码,也可以返回"未授权"错误.这可以通过生成个人访问令牌来解决.

生成安全访问令牌后,我们将使用此代码而不是密码.确保在完成之前不要离开页面,因为一旦你离开页面,你将永远不会再看到它(幸运的是它可以重新生成,但使用以前生成的令牌的任何东西都将停止进行身份验证).

这假设您已成功安装EGit并且已成功克隆存储库.

  1. 转到您的GitHub.com设置,然后在左侧窗格中单击Personal access tokens.
  2. 点击Generate new token.选择您希望此令牌能够使用的范围,并生成它.
  3. 复制令牌.它看起来应该是这样的:( 9731f5cf519e9abb53e6ba9f5134075438944888别担心,这是无效的).
  4. 回到Eclipse(Juno,因为那是OP的版本),点击Window > Show View > Other....在Git,选择Git Repositories.
  5. 将出现一个新窗格,您可以从中打开该窗格(repository name) > Remotes > origin.
  6. 右键单击节点并选择Change Credentials....输入您的用户名User,以及您的安全访问令牌Password.


Mic*_*ter 11

当我在远程存储库上更改密码时,我遇到了类似的问题.

以下是我在Mac上的Eclipse上修复它的方法:

重要说明:这些说明具有清除所有密码和其他安全信息的副作用.我很好,但在你遵循这些指示之前,你会想要考虑一下.

  1. 单击Eclipse - >菜单上的首选项.
  2. 期待一个名为Preferences的弹出窗口.
  3. 展开"常规"树项.
  4. 双击"安全"树项.
  5. 预计弹出窗口的主窗格将更改为"查看'安全存储'以..."
  6. 点击"安全存储".
  7. 预计主窗格将更改为选项卡式窗口.
  8. 单击"内容"选项卡.
  9. 点击"删除".
  10. 接受警告,删除所有安全信息.
  11. 单击"取消"或"应用"退出弹出窗口.
  12. 单击"Git Pull"图标,预计会提示您输入用户名和密码.