问题描述
一个密码没问题
我想“安全地”存储我的凭据以供 git
使用,所以我按照指示做了
here。这样我就不用每次都输入密码/PAT,我执行任何git操作。
-
使用
安装libsecret
sudo apt-get install libsecret-1-0 libsecret-1-dev
-
使用
构建“凭据管理器”sudo make --directory=/usr/share/doc/git/contrib/credential/libsecret
-
然后使用
配置我的本地 git 文件夹git config --global credential.helper \ /usr/share/doc/git/contrib/credential/libsecret/git-credential-libsecret
效果很棒。
如何使用多个密码进行上述操作?
我不明白的是如何对许多密码做同样的事情 使用不同的帐户/存储库。有人建议我使用 gcm 核心。
我尝试按照 here 的指示安装 gcm core
。
-
下载 .deb 包
-
sudo dpkg -i <path-to-package> git-credential-manager-core configure
-
配置“凭证存储”
git config credential.credentialStore secretservice
(因为我使用 libsecret)。 -
我删除了指向的
Credential helper
/usr/share/doc/git/contrib/credential/libsecret/git-credential-libsecret
来自本地 git 配置文件。
它仍然不起作用。当我尝试推送存储库时,出现乱码
带有如何使用 git config
的消息,然后是要求填写
凭据(显示为 here)。我不明白我在做什么!即 credential store
、credential manager
、secret-service
和 gcm core
。
解决方法
任何凭证助手都应遵循相同的流程。
但是如果您在同一个域中有多个帐户/密码(例如 github.com),那么您需要更改远程 URL
cd /path/to/my/local/repo1
git remote set-url origin https://[email protected]/user1/myRepo1
^^^^^^
cd /path/to/my/local/repo2
git remote set-url origin https://[email protected]/user1/myRepo2
^^^^^^
这样,凭证助手就会区分您的不同帐户。
由于 gcm 核心安装起来有点麻烦,请先使用经典的基于 libsecret 的帮助程序对其进行测试。