Git 如何访问我的 GitHub 凭据?
How is Git accessing my GitHub credentials?
我试图删除 Git 对 GitHub 上私有 GitHub 存储库的访问权限。无论我尝试什么,我都无法阻止它获得访问权限。因此我想知道它是如何进行身份验证的,这样我就可以.
我试过了
第一个:
git config --global --unset user.name
git config --global --unset user.email
git config --global --unset credential.helper
第二个
git config --global --unset-all
而且我还删除了钥匙串访问中的每个 github 条目。
当我打开一个新终端 window 并推送到私有 GitHub 存储库时,它会通过用户名和电子邮件请求(不是 密码), 推送成功
问题
我如何找出终端中的 Git 如何使用我的 GitHub 凭据将更改推送到 GitHub?
备注
- 我正在通过 HTTPS(而不是 SSH)连接到 GitHub
在大多数 macOS 系统上,credential.helper
变量未在全局配置中设置,而是在系统配置中设置,因此您仍然启用了凭证助手。您可以通过 运行ning git config --get credential.helper
验证这一点,这可能会打印 osxkeychain
.
如果您的目标是删除凭据,您可以按照 the steps outlined in the Git FAQ:
$ echo url=https://username@github.com | git credential reject
如果您只对凭据助手是否有任何凭据感兴趣,您可以运行这样:
$ echo url=https://username@github.com | git credential fill | less
这将打印包含 password=
和密码的行。请注意,在这种情况下,我将其通过管道传输到 less 以防止它在屏幕上长期打印。
根据 GitHub Docs,对于 macOS:
Through the command line, you can use the credential helper directly to erase the keychain entry.
$ git credential-osxkeychain erase
host=github.com
protocol=https
> [Press Return]
If it's successful, nothing will print out. To test that it works, try and clone a private repository from GitHub. If you are prompted for a password, the keychain entry was deleted.
我试图删除 Git 对 GitHub 上私有 GitHub 存储库的访问权限。无论我尝试什么,我都无法阻止它获得访问权限。因此我想知道它是如何进行身份验证的,这样我就可以
我试过了
第一个:
git config --global --unset user.name
git config --global --unset user.email
git config --global --unset credential.helper
第二个
git config --global --unset-all
而且我还删除了钥匙串访问中的每个 github 条目。
当我打开一个新终端 window 并推送到私有 GitHub 存储库时,它会通过用户名和电子邮件请求(不是 密码), 推送成功
问题
我如何找出终端中的 Git 如何使用我的 GitHub 凭据将更改推送到 GitHub?
备注
- 我正在通过 HTTPS(而不是 SSH)连接到 GitHub
在大多数 macOS 系统上,credential.helper
变量未在全局配置中设置,而是在系统配置中设置,因此您仍然启用了凭证助手。您可以通过 运行ning git config --get credential.helper
验证这一点,这可能会打印 osxkeychain
.
如果您的目标是删除凭据,您可以按照 the steps outlined in the Git FAQ:
$ echo url=https://username@github.com | git credential reject
如果您只对凭据助手是否有任何凭据感兴趣,您可以运行这样:
$ echo url=https://username@github.com | git credential fill | less
这将打印包含 password=
和密码的行。请注意,在这种情况下,我将其通过管道传输到 less 以防止它在屏幕上长期打印。
根据 GitHub Docs,对于 macOS:
Through the command line, you can use the credential helper directly to erase the keychain entry.
$ git credential-osxkeychain erase
host=github.com
protocol=https
> [Press Return]
If it's successful, nothing will print out. To test that it works, try and clone a private repository from GitHub. If you are prompted for a password, the keychain entry was deleted.