每次我推Git都要求input用户名
每当我尝试推入我的回购混帐请求username & password
。
每次重新input密码都没有问题,但问题在于input用户名。 我使用https
克隆我的存储库。
那么,我怎样才能configurationgit,这样它就不会在每个git push
上要求username
。
我是新来的Linux,但在Windows中的IIRC git push
只要求密码。
您可以使用以下命令来存储您的凭证
$ git config credential.helper store $ git push http://example.com/repo.git Username: <type your username> Password: <type your password>
另外我build议你阅读
$ git help credentials
您可以在本地存储库的.git/config
文件中完成此操作。 该文件包含一个名为“remote”的部分,其中有一个名为“url”的条目。 'url'条目应该包含您正在讨论的存储库的https链接。
当你用你的用户名前缀主机'url'时, git
不应该再要求你的用户名了。 这是一个例子:
url = https://username@repository-url.com
使用Git存储库进行永久身份validation
运行以下命令启用凭证caching:
$ git config credential.helper store $ git push https://github.com/repo.git Username for 'https://github.com': <USERNAME> Password for 'https://USERNAME@github.com': <PASSWORD>
使用还应该指定caching过期
git config --global credential.helper 'cache --timeout 7200'
启用凭证caching后,它将被caching7200秒(2小时) 。
阅读凭据文档
$ git help credentials
如果你使用的是https而不是ssh,你可以在.git/config
编辑“url”,就像user701648所说的那样,但是如果你想要的话,你可以添encryption码:
url = https://username:password@repository-url.com
您可以通过在Gitconfiguration文件中添加如下内容来为给定站点的所有存储库设置用户名。 您需要将“ https://example.com ”和“我”更改为实际的url和您的实际用户名。
[credential "https://example.com"] username = me
(这是直接从“git帮助凭据”)
我发现的最简单的方法是使用这个命令:
git config --global credential.https://github.com.username <your_username>
这在一个网站的基础上工作,并修改您的全球gitconfiguration。
要查看更改,请使用:
git config --global --edit
按照GitHub上的这篇文章所述添加新的SSH密钥。
如果Git仍然要求您input用户名和密码,请尝试将https://github.com/
更改为git@github.com:
在远程URL中:
$ git config remote.origin.url https://github.com/dir/repo.git $ git config remote.origin.url "git@github.com:dir/repo.git"
确保你使用的是SSH而不是http。 检查这个答案。
除了user701648的答案之外,您可以使用以下命令将您的凭据存储在您的主文件夹(全局项目)中,而不是项目文件夹中
$ git config --global credential.helper store $ git push http://example.com/repo.git Username: <type your username> Password: <type your password>
更改克隆的回购作品:
git remote set-url origin git@github.com:gitusername/projectname.git
使用caching的凭据工作,并设置超时时间使事情less烦人。 如果您使用Windows凭据助手,这应该是最简单的方法(特别是如果SSH被阻止)。
如果你使用SSH版本,你将不会有任何密码问题。只有一次你生成SSH密钥,告诉GIT, 这台电脑将与这个 GitHub帐户工作,并再也不问我有任何访问(本电脑)。
如何为Github生成SSH
-
$ git config credential.helper存储
-
$ git push / push https://github.com/xxx.git
-
然后input您的用户名和密码。
- 完成
为了避免input用户名,但仍然被提示input密码,那么你可以简单地克隆你的存储库,包括用户名:
git clone user_name@example.gitrepo.com/my_repo.git