这可能是个愚蠢的问题。但我无法通过搜索找到任何相关信息。也许,这是个愚蠢的问题。
我已将我的代码存储在 github 中。
2 小时前,我想更新存储库中的代码,但我的本地没有该代码。所以我克隆了它,修改了代码,然后推送了它。这时git提示我输入github的用户名和密码。我输入了它并更新了代码。
之后,我在“OTHER”存储库中阅读了我的代码。我也发现了一些需要修改的地方。所以我将该存储库克隆到我的本地计算机,修改代码并推送它。
但是...此时git并没有提示输入github的用户名和密码
嗯?这是否意味着任何人在 github 中克隆了我的代码也可以推送到我的 github 存储库?这是非常危险的情况,不是吗?
所以我测试了在 github 中创建新的存储库。我将这个新存储库克隆到我的本地,进行了一些更改,然后推送了它。但是 git 也不会提示输入用户名和密码。
所以,我的问题是,
- 第一次推送是不是把github登录信息保存在我的本地电脑上,以后再推送就可以使用了?那么,它在哪里?
- 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 设置页面。
最佳答案
您可以通过运行以下命令手动取消设置 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 凭据条目。
关于git - 为什么在github push 时git 不要求我输入用户名和密码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31793680/