执行 git push/pull 时如何禁用密码提示?

whi*_*win 46 linux git

每次我想push和/或pull从终端(在 Linux 中)时,我都必须输入密码。如何删除它以便它在没有密码的情况下拉动和/或推动?

小智 33

git config credential.helper store 
Run Code Online (Sandbox Code Playgroud)

这会将您的凭据存储在根目录中的文件夹中。您需要在此命令之后运行git pull/git push并首次提供用户名和密码。在此之后,它不会提示输入用户名和密码。详情见https://git-scm.com/docs/git-credential-store

正如0xc0de在评论中所写,这将存储未加密的密码!

  • 这应该被选为这个问题的正确答案。IMO,OP 想询问`https` 的解决方案,以避免一次又一次地输入用户名/密码,而不是切换到`ssh` 解决方案。1+ 对于这个答案。 (4认同)
  • 请注意,存储凭据帮助程序将密码未加密地存储在磁盘上。 (4认同)

Jin*_*Jin 27

生成用于无密码身份验证的私钥/公钥对。

对于 Linux,您的密钥存储在~/.ssh.

如果您已经有~/.ssh名为id_rsaand 的文件id_rsa.pub,那么您已经有了一个密钥对。将公钥(即id_rsa.pub)的内容附加到 Git 存储库的 ~/.ssh/authorized_keys 文件中。

$ scp ~/.ssh/id_rsa.pub user@git.repo:id_rsa.tmp
$ ssh user@git.repo
$ cat id_rsa.tmp >> .ssh/authorized_keys
Run Code Online (Sandbox Code Playgroud)

如果您没有密钥对,请生成一个

$ ssh-keygen -t rsa

阅读更多说明:http : //inchoo.net/tools-frameworks/how-to-generate-ssh-keys-for-git-authorization/