我们最近将我们的 github 从一个帐户所有者转移到另一个帐户所有者,现在突然间当我git pull
在远程 repo 上执行一个或任何 git 命令时,它会要求我提供 github 用户名和密码。
我的 git-config 说:
[github]
user = kamilski81
token = *********
知道如何阻止它向我询问凭据并记住所有内容,新所有者是否必须设置我的 ssh 密钥或类似的东西?
我们最近将我们的 github 从一个帐户所有者转移到另一个帐户所有者,现在突然间当我git pull
在远程 repo 上执行一个或任何 git 命令时,它会要求我提供 github 用户名和密码。
我的 git-config 说:
[github]
user = kamilski81
token = *********
知道如何阻止它向我询问凭据并记住所有内容,新所有者是否必须设置我的 ssh 密钥或类似的东西?
按照这篇文章为我整理了一下: https ://help.github.com/articles/why-is-git-always-asking-for-my-password
git remote set-url origin git@github.com:user/repo.git
gitconfig 中的 github 用户名和令牌仅用于与 GitHub API 的交互(例如hub
gem 和github
工具)。
如果您通过 https 从 GitHub 存储库推送和拉取,那么您需要每次都指定您的凭据,或者连接到密码管理器以记住您的凭据。如何执行此操作取决于您的平台。
最简单的做法是转到您的 github 帐户并将您的 SSH 公钥提交到您的帐户,然后将您的 github 远程切换为通过 ssh 而不是 https 推送/拉取。
[编辑] 在重新阅读问题后,我注意到您提到它以前是一个 GitHub 存储库,刚刚从一个所有者转移到另一个所有者。如果是这种情况,并且您可以通过指定您的凭据来推送和拉取,那么在我看来这是以下两种情况之一:
在执行“remote -v”之后......问题是我的遥控器使用的是“https”遥控器而不是“git”遥控器。将遥控器更改为使用 git 而不是 https 解决了所有问题。
如果您只执行一次git pull并且 Git 客户端仍然询问您的凭据而没有为您执行git pull,那么问题应该是因为您的凭据不正确或尚未设置。
但是,如果您收到对话框,要求为每个操作提供一个凭据,则意味着您的凭据不被记住。为此,您可以使用Pageant存储您的 SSH 私钥,因此,每次您执行某项操作时,它都会从 Pageant 检索您的凭据,而不是询问您。