每当我尝试推入我的存储库时,git都会要求用户名和密码。
每次重新输入密码没有问题,但问题是输入用户名。我使用https克隆存储库。
那么,我如何配置git,使它在每次git推送时都不需要用户名。
我是linux新手,但windows git push中的IIRC只要求输入密码。
每当我尝试推入我的存储库时,git都会要求用户名和密码。
每次重新输入密码没有问题,但问题是输入用户名。我使用https克隆存储库。
那么,我如何配置git,使它在每次git推送时都不需要用户名。
我是linux新手,但windows git push中的IIRC只要求输入密码。
当前回答
对我来说,当我为我的帐户启用2因素身份验证(2FA)时,出现了此问题。我会输入正确的凭据,但身份验证仍然会失败,因为终端身份验证当然不会要求验证代码。
我只需要为我的帐户禁用2FA。这样做后,我只能在git推送期间输入一次凭据。从那时起,他们就不需要了。
其他回答
更改克隆的存储库可以:
git remote set-url origin git@github.com:gitusername/projectname.git
使用缓存的凭据是有效的,设置超时时间可以减少麻烦。如果您使用Windows凭据助手,这应该是最简单的方法(特别是在SSH被阻止的情况下)。
我找到的最简单的方法是使用以下命令:
git config --global credential.https://github.com.username <your_username>
这会逐个站点工作,并修改全局git配置。
要查看更改,请使用:
git config --global --edit
ssh+密钥身份验证比https://credential.helper更可靠
您可以配置为对所有存储库使用SSH而不是HTTPS,如下所示:
git config --global url.ssh://git@github.com/.insteadOf https://github.com/
网址<此处记录了base>.installOf。
如果您使用的是https而不是ssh,您可以按照user701648所说的那样在.git/config中编辑“url”,但如果您愿意,也可以添加密码:
url = https://username:password@repository-url.com
您可以通过在Git配置文件中放置以下内容来设置给定站点上所有存储库的用户名。你会想改变的”https://example.com“和”我“添加到实际URL和您的实际用户名。
[credential "https://example.com"]
username = me
(这直接来自“git help credentials”)