为什么我另一个github账号可以直接向我的仓库提交东西

我有一个旧的账号,几年没用了.装了一个新电脑,然后写了一点往我仓库里提交,结果发现都是我旧账号提交的?这是为啥啊?
就算我账号搞混了,不是说别的账号提交都要fork,然后pull request的吗.我新写的东西就直挺挺地出现在我的master分支里了啊..

我彻底糊涂了,我想知道提交到github时输入的账号信息(我没有生成秘钥),怎么查看?

阅读 4.4k
3 个回答

git 本地仓库的账户应该只是作为标识,都可以 git commit 。
我有两个账户 A , B。本地仓库由 A 创建,后来全局设置成 B,照样可以往 A 的这个项目提交。
以上提及的账户都只是通过 git config 设置了 user.name 和 user.email。并没有密码什么的。
这些都是 git 的东西。

然后是 push 到 GitHub 上。
这个步骤才需要 GitHub 账户及密码(或者是 SSH 密钥)。
这步只要用户成功登录就可以提交。

我好像知道了原因了:

  1. 我确实输错账号密码,这有可能,我账号密码都很相似.
  2. 同时我在vscode的setting sync插件中绑定过token,并且忘了把对repo的操作权限取消.

查看是否绑定token可以在控制面板-> 用户 -> windows凭据中看到
windows凭据保存的是github账号密码

但是怎么在vscode中看上传时的github账号呢?

情况好像摸清了

事实是我指定了git config的user.email(是我的旧账号的邮箱)起了作用,即使我并没有输入github账号密码,也能冒充我的user.email对应的账号上传更改.(那我是不是就可以冒充某位大佬啊,捂脸...逃...)

附上github官方的解释通过git email模拟用户提交

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题