我在几台计算机上工作,我确保在推送时git从不存储我的密码。所以简而言之,我希望git总是要求我的github密码。
这可能吗?
我比在Mac上感到沮丧,因为某些原因它总是将我的密码存储在钥匙串中,我每次都必须手动删除它。
我正在使用命令行。
编辑:
这个答案给了我一个解决问题的线索:
How do I disable git's credential helper for a single repository?
在终端中运行:
git config --local credential.helper ''
或者,您可以编辑.git / config文件并使用:
[credential]
helper = ''
我没有root密码(由于某种原因,管理员密码不是有效的root密码,请参阅图。)
答案 0 :(得分:1)
git config --global --unset credential.helper
git config --system --unset credential.helper
在Windows中: 通过单击“开始”按钮,“开始”按钮的图片,“控制面板”,“用户帐户和家庭安全”(或单击“用户帐户”,如果已连接到网络域),然后单击“用户帐户”,打开“用户帐户”。在左窗格中,单击“管理您的凭据”。 Windows 7:控制面板\用户帐户\凭据管理器
技巧:https://git-scm.com/book/en/v2/Git-Tools-Credential-Storage 您可以将记住权限超时更改为0(零)。
<强> MACOS 强>
尝试运行/ Applications / Utilities / Keychain Access
右键单击,选择Delete
如果要使用macOS Terminal中的命令行,请键入
git credential-osxkeychain erase
host=github.com
protocol=https
答案 1 :(得分:0)
据我所知,这将是一个SSH问题。您不希望将MacOS密钥链用于某个主机,即GitHub。
这是我实现这个目标的方法
SSH的默认配置是从~/.ssh/config
加载的(〜是您的主目录)。
在您喜欢的编辑器中打开该文件,并添加您的GitHub主机,其配置不会将您的密钥存储在密钥链/代理中。
例如
Host <short name for your host, perhaps my-github or github.com>
Hostname github.com
UseKeychain no
AddKeysToAgent no
注意:如果您希望规则适用于您可以使用的所有主机
Host *
如果您的短名称不是github.com,请说super-server-github编辑您的<path-to-repo>/.git/config
以反映该名称
[remote "origin"]
url = git@super-server-github:activehacker/gfs.git
祝你好运!