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

然后,我尝试“从上游获取”。我收到此错误:

https://github.com/biunlp/nlp-lab.git:未经授权

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

这很奇怪,因为我为了克隆而连接到该存储库...

最佳答案

A.为每个 Remote 分别指定凭据

  • 打开Git存储库 View
  • 打开“Remotes > origin > <your push url>
  • 单击“更改凭据...”

  • (来自User Guide - Resource Context Menu)
    B.指定每台服务器的凭据
    如果要访问同一服务器上的多个存储库而不多次提供相同的凭据,则可以使用.netrc。这样,eGit将使用您提供的配置。
  • 在用户主目录中创建一个名为.netrc(在Windows中为_netrc)的文本文件。
  • 以以下形式向文件添加内容:

  • 机器my.server1.com
    登录yourUserName
    密码yourPassword

    机器my.server2.com
    登录yourUserName
    密码yourPassword

    Stash文档包含more information about .netrc
    安全问题通过这种方式使用.netrc的问题是密码以纯文本形式可见。请引用this answer in Stackoverflow解决该问题。

    10-06 05:42