35

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

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

谢谢!

更新:

我在这里找到了答案:在 GitHub 上使用 https:// 时,有没有办法跳过密码输入?

总结:

记住密码 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

西姆

4

2 回答 2

29

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

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

转到GCMW 的最新版本,下载 zip 文件(不是安装程序),将其内容(仅需要.dll.exe文件)解压缩到C:\cygwin\usr\libexec\git-core\32 位 Cygwin 或C:\cygwin64\usr\libexec\git-core\64 位 Cygwin。参考

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

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

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

于 2016-04-19T14:26:07.197 回答
19

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

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

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

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

于 2014-04-23T16:25:42.610 回答