每次我推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

  1. $ git config credential.helper存储

  2. $ git push / push https://github.com/xxx.git

  3. 然后input您的用户名和密码。

  4. 完成

为了避免input用户名,但仍然被提示input密码,那么你可以简单地克隆你的存储库,包括用户名:

 git clone user_name@example.gitrepo.com/my_repo.git