每次推送时Git都要求输入用户名

877

每次我尝试向我的repo推送时,git都要求输入用户名和密码

我每次重新输入密码都没有问题,但问题是输入用户名。我使用https来克隆我的存储库。

那么,如何配置git,使其不会在每次git push时要求输入用户名

我是Linux新手,但如果我没记错,在Windows中git push只需要输入密码。


1
相关问题:https://dev59.com/t3E95IYBdhLWcg3wm_Mu - Wug
4
请按照这些指示操作,并省略密码行。 - Wug
如果您只想保存用户名,那很简单,只需执行以下操作: https://help.github.com/articles/setting-your-username-in-git/ - Jim In Texas
我也有同样的问题,在这里链接了对我有用的答案:https://dev59.com/PFsV5IYBdhLWcg3wrAZJ#35942890 - Benj
显示剩余5条评论
31个回答

4
您可以直接运行。
git config --global credential.helper wincred

在您的系统中安装并登录GIT for Windows之后。

查询中没有看到 Linux 这个词。我的错。 - cyperpunk

4

嗯 - 不是。那只是一种可能性,而不是“正确的方法”。此外,请检查此答案中的OP评论(顺便说一句,这与您的评论非常相似)。 - tink

3

3

(仅适用于 Mac 操作系统)

对于 WindowsLinux,请参阅下面提到的Github文档链接。

来自Github文档:文档链接

在Git中缓存您的GitHub密码

  • 您需要使用osxkeychain凭据助手, Git 版本 1.7.10 或更新版本。

    检查您的 Git 版本: git --version

  • 查看是否已经安装了 osxkeychain 凭据助手

    git credential-osxkeychain

    如果你得到以下响应,则表示您已经在 Mac 上安装并准备好使用它了:

    > Usage: git credential-osxkeychain <get|store|erase>

    如果没有得到上述相应,则可通过运行以下命令进行安装:

    git credential-osxkeychain

  • 告诉 Git 全局使用 osxkeychain 作为 Git 凭据:

    git config --global credential.helper osxkeychain

    在保存凭据到 钥匙串 之前,它会提示一次。


3

我过去会将Git仓库的用户名和密码存储在磁盘上,这样每次推送代码时git就不需要再询问我的用户名和密码了。

按照以下命令将凭据保存在本地存储中:

$ git config credential.helper store
or
$ git config --global credential.helper store

从现在开始,Git 在第一次访问每个 URL 上下文时会将凭据写入到 ~/.git-credentials 文件中。要查看此文件的内容,您可以使用如下所示的 cat 命令。

$ cat  ~/.git-credentials

2

使用以下命令可以设置15分钟的超时时间。

$ git config --global credential.helper cache

您也可以通过以下命令修改时间。这是一个1小时的示例。

$ git config --global credential.helper 'cache --timeout=3600'

如果您想要进行本地缓存,请使用以下命令并将超时时间设置为一小时。

$ git config credential.helper 'cache --timeout=3600'

1
当我为我的帐户启用了双因素身份验证(2FA)时,出现了这个问题。我会输入正确的凭据,但认证仍然失败,因为终端认证不会要求身份验证代码。
我只需为我的帐户禁用2FA。在这样做后,我只需要在git push期间输入我的凭据一次。从那时起,它们就不再需要了。

1

1
这是因为使用HTTPS下载而不是SSH。我采用的最简单方法是,在进行了一些更改后,将所有内容推送,并在其中要求输入用户名和密码,然后从我的机器中删除目录并git clone SSH地址。问题得到解决。
只需使用SSH克隆即可,而不是HTTP,它不会要求输入用户名或密码。
同时,即使使用SSH下载,启用双因素身份验证也会创建问题,因此禁用它可以解决问题。

0
今天我遇到了这个问题。如果你在2020年11月遇到了这个问题,那么你需要更新你的git版本。我收到了一封关于这个问题的邮件。 以下是github团队发送的邮件内容。
我们检测到您最近尝试使用旧版本的Git for Windows来认证GitHub。GitHub已经改变了用户在使用Git for Windows时进行认证的方式,现在需要使用Web浏览器来认证GitHub。为了能够通过Web浏览器登录,用户需要更新到最新版本的Git for Windows。您可以在以下链接下载最新版本: 如果您无法将Git for Windows更新至最新版本,请查看以下链接以获取更多信息和建议的解决方法: 如果您对这些更改有任何问题或需要任何帮助,请联系GitHub支持,我们将非常乐意提供帮助。谢谢,GitHub团队

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接