13

现在,随着新的 2 因素身份验证,这一点变得更加重要,因为每次在终端上需要密码时都必须创建一个新令牌。基本上,我正在寻找一个与 OS X 中可用的 osxkeychain 等效的东西,我可以在 Linux 桌面和服务器上使用它:

git config --global credential.helper osxkeychain

我搜索了可能的解决方案,但到目前为止我不喜欢其中任何一个:

  • ssh 而不是 https -不推荐,而且在 GitHub 上不容易访问链接
  • cache --timeout=3600- 它最终会过期,重新输入密码是新 2FA的拖累
  • gnome-keyring - 在无头服务器上不起作用(至少不太优雅- ssh 密码密钥环要好得多)
  • 我的硬盘驱动器方法上的加密 .netrc 文件 - 穷人的手动密钥环实现?

来吧,必须有一些适当的基于终端的 Linux 钥匙串,可以连接到 git 的 credential.helper!

4

2 回答 2

6

我仍然会推荐我在“使用时是否可以跳过密码输入https://github.com”中描述的方法

加密您的.netrc允许您在一个文件中存储多个凭据(到 GitHub 和 BitBicket 等等),并通过 git credential helper netrc (git1.8.3+) 使用它。

它与 Github 两因素身份验证兼容,正如我在“配置 Git 客户端,如 Windows 的 GitHub,不要求身份验证”中详细说明的那样。

它适用于 Windows(和 Linux 或 Mac)。
并且您可以限制 gpg 不会再次询问您私钥密码的分钟/小时数。

于 2013-09-17T05:38:41.950 回答
-9

不推荐这种方法,但如果你赶时间并且没有其他方法适合你,只需添加一个新的遥控器

git remote -rm origin 

git remote add origin https://username:mypassword@github.com/path/to/repo.git

就是这样,您无需一次又一次地输入密码

注意:此方法不适用于两步授权账户

于 2014-07-12T11:34:39.927 回答