git - 为什么在github push 时git 不要求我输入用户名和密码?

标签 git github

这可能是个愚蠢的问题。但我无法通过搜索找到任何相关信息。也许,这是个愚蠢的问题。

我已将我的代码存储在 github 中。

2 小时前,我想更新存储库中的代码,但我的本地没有该代码。所以我克隆了它,修改了代码,然后推送了它。这时git提示我输入github的用户名和密码。我输入了它并更新了代码。

之后,我在“OTHER”存储库中阅读了我的代码。我也发现了一些需要修改的地方。所以我将该存储库克隆到我的本地计算机,修改代码并推送它。

但是...此时git并没有提示输入github的用户名和密码

嗯?这是否意味着任何人在 github 中克隆了我的代码也可以推送到我的 github 存储库?这是非常危险的情况,不是吗?

所以我测试了在 github 中创建新的存储库。我将这个新存储库克隆到我的本地,进行了一些更改,然后推送了它。但是 git 也不会提示输入用户名和密码。

所以,我的问题是,

  1. 第一次推送是不是把github登录信息保存在我的本地电脑上,以后再推送就可以使用了?那么,它在哪里?
  2. github 存储库的默认安全设置是什么?我没有将这台本地计算机的 SSH key 注册到 github 帐户。对于任何使用 master 分支推送到我的存储库而无需任何身份验证的人来说,这似乎是不合理的。

下面是我做上述工作时的命令。

$git init
$git clone https://github.com/[user name]/[repository name].git
<some change>
$git add *
$git commit -m "change"
$git remote add origin https://github.com/[user name]/[repository name].git
$git push origin master

补充信息。 有关详细信息,我捕获了我的 github 设置页面。

enter image description here

enter image description here

enter image description here

最佳答案

您可以通过运行以下命令手动取消设置 credential.helper。

git config --global --unset credential.helper

根据您的需要使用 --global--local--system

然后push in github会要求输入用户名和密码。

如果您在 Windows 上,另一种方法如下所示,但请注意,如果您将 credential.helper 与 git 一起使用,它将再次保存您的凭据。

转到 control panel -> Credential Manager -> Windows Credentials 并删除您的 git 凭据条目。 enter image description here

关于git - 为什么在github push 时git 不要求我输入用户名和密码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31793680/

相关文章:

windows - .gitconfig 安装在 Windows 10 的错误驱动器上

git - 重命名存储库名称后更新origin

node.js - WebRTC在不同网络中没有视频

GitHub for Windows 预提交 Hook

python - web2py git 集成 - 本地主机和 pythonanywhere

git - 什么是 'temporary clone token'(在 GitHub 中)

xcode - 如何解决 xcode ui 中的 git pull 冲突

github - 如何直接从 Github 中的私有(private)存储库运行 .html 文件?

html - Github、Jupyter - 将上传到 github 的 jupyter 笔记本中的文本居中对齐

git push/pull origin [branch] 快捷方式?