【问题标题】:Store https passwords with cygwin's Git使用 cygwin 的 Git 存储 https 密码
【发布时间】:2013-09-12 02:21:16
【问题描述】:

我正在使用 Cygwin 和 Git。每次我使用 https url 推/拉到 Bitbucket 上的存储库时,都会要求我输入密码。 有没有办法存储这些凭据(比如使用 ssh-keys)?

我尝试安装 Windows Credential Store for Git,但无法让它与 cygwin 的 Git 一起使用。

谢谢!

更新:

我在这里找到了答案:Is there a way to skip password typing when using https:// on GitHub?

总结:

记住密码 15 分钟(默认):

git config --global credential.helper cache

记住密码 10 小时:

git config --global credential.helper 'cache --timeout=36000'

存储密码(没试过):

git config --global credential.helper store

重置:

git config --unset --global credential.helper

西姆

【问题讨论】:

  • 下次如果你找到答案,就写一个你自己问题的答案(你可以,这是一个很好的做法),而不是写编辑问题把答案放进去
  • 我尝试了“存储密码”选项并且它有效,即使在重新启动 cygwin 之后也是如此。没有尝试更多。

标签: windows git passwords cygwin bitbucket


【解决方案1】:

OP 回答他自己问题的方式是解决问题的一种方式。

Windows Credential Store 项目于 2015 年停止。其原作者建议使用由 Microsoft 维护的 Git Credential Manager for Windows。他们的安装程序专注于 Windows 版 Git,但是该程序本身可以很好地与 Cygwin 配合使用,您只需手动安装即可。

转到 GCMW's latest release,下载 zip 文件(不是安装程序),将其内容(仅需要 .dll.exe 文件)解压缩到 C:\cygwin\usr\libexec\git-core\ 用于 32 位 Cygwin,或 C:\cygwin64\usr\libexec\git-core\ 用于64 位 Cygwin。 Reference

要让 git 使用 GCMW,请执行:git config --global credential.helper manager

要获取凭据的 GUI 提示,请执行:git config --global credential.modalprompt true

如果您希望这是针对每个存储库的设置,请删除 --global 选项。

【讨论】:

  • 最后一个提示,在将这些文件复制到git-core 后,请确保chmod a+x *.{exe,dll}。否则,您会看到类似“'credential-manager' is not a git command”的错误,因为 git-credential-manager.exe 不可执行。
  • 此解决方案也适用于 MSYS2。转储*.dll*.exe 的路径是C:\msys64\usr\lib\git-core
  • GCMFW 现在(或很快?)已过时。以下调整后的解决方案适用于新的跨平台 git-credential-manager-core。从 Git Credential Manager Core zip 中移动所有 exe/dll 后,只需使用 git config --global credential.helper manager-core 新实用程序就在这里:github.com/microsoft/Git-Credential-Manager-Core/releases
【解决方案2】:

我让Windows Credential Store 与 cygwin 一起工作。唯一需要更改的是全局 ~/.gitconfig 文件。

将通常可以在文件末尾找到的“helper”值更改为以下内容:

[credential]
    helper = !'/cygdrive/C/Users/<YOUR-ACCOUNT-NAME>/AppData/Roaming/GitCredStore/git-credential-winstore.exe'

作为解释,cygwin只是使用不同的路径,值当然必须遵循规则。

【讨论】:

  • 这是金子,谢谢!每个人都确保安装 cygwins git(通过 cygwin 安装程序)。否则,您将无法使用此解决方案。
  • 为我工作!但我使用的是更新的git-credential-manager,我的路径略有不同:!'/cygdrive/C/Users/&lt;YOUR-ACCOUNT-NAME&gt;/AppData/Local/Programs/Microsoft Git Credential Manager for Windows/git-credential-manager.exe'
猜你喜欢
  • 1970-01-01
  • 2014-12-10
  • 1970-01-01
  • 2015-03-22
  • 1970-01-01
  • 2023-03-22
  • 2022-07-19
  • 2021-07-28
  • 1970-01-01
相关资源
最近更新 更多