每当我尝试推入我的存储库时,git都会要求用户名和密码。
每次重新输入密码没有问题,但问题是输入用户名。我使用https克隆存储库。
那么,我如何配置git,使它在每次git推送时都不需要用户名。
我是linux新手,但windows git push中的IIRC只要求输入密码。
每当我尝试推入我的存储库时,git都会要求用户名和密码。
每次重新输入密码没有问题,但问题是输入用户名。我使用https克隆存储库。
那么,我如何配置git,使它在每次git推送时都不需要用户名。
我是linux新手,但windows git push中的IIRC只要求输入密码。
当前回答
ssh+密钥身份验证比https://credential.helper更可靠
您可以配置为对所有存储库使用SSH而不是HTTPS,如下所示:
git config --global url.ssh://git@github.com/.insteadOf https://github.com/
网址<此处记录了base>.installOf。
其他回答
截至8月13日,2021不再接受基于密码的登录。现在需要使用基于令牌/SSH的身份验证。
如果你不想每次推送时都被问到,请安装GitHubCLI,然后缓存凭据:
git config --global credential.helper store
gh auth login
并按照提示进行操作。但请确保使用GitHub凭据检查Authenticate Git?带有Y。
快速方法
在工作目录中获取git的url:
git config remote.origin.url
那么:
git config credential.helper store
git push "url of your git"
将最后一次询问用户名和密码
完成。
如果您使用的是https而不是ssh,您可以按照user701648所说的那样在.git/config中编辑“url”,但如果您愿意,也可以添加密码:
url = https://username:password@repository-url.com
我使用将我的Git存储库用户名和密码存储在磁盘上。所以每次我推送代码时,git都不会询问用户名和密码
按照以下命令在本地存储中保存凭据
$ git config credential.helper store
or
$ git config --global credential.helper store
从现在起,Git将在第一次访问每个URL上下文时将凭据写入~/.Git凭据文件。要查看此文件的内容,可以使用cat命令,如图所示。
$ cat ~/.git-credentials
解决这个问题的正确方法是将http更改为ssh。
您可以使用此git remote rm源来删除远程回购。
然后,您可以使用ssh-sintax(可以从github复制)再次添加它:git远程添加原点git@github.com:username/reportname.git。
检查这篇文章。https://www.freecodecamp.org/news/how-to-fix-git-always-asking-for-user-credentials/