中间过程比较碎碎念,涉及到一些错误的方案以及和 gpt 对线
可以直接跳到结论部分
0 场景
我有一个项目,仓库里已经配置了 ssh 公钥,但是每次 pull 或者 push 代码依旧提示输入用户名、密码
-1 失败的方案
-1.1 失败的方案1:全局配置用户名密码
这种情况下第一个想到的就是是不是要全局配置一下用户名、密码,网上找到的方案是
$ git config --global user.name 用户命
$ git config --global user.password 密码
$ git config --global user.password 邮箱
试了还是不行,而且这么配置下,使用命令 git config --global --list
可以看到密码明文,非常不安全(后续我又给删掉了)
-1.2 失败的方案2:重装 git
-1.3 失败的方案3:新生成 ssh key
1 解决思路
这时我想到,会不会是这个项目本身的本地配置有一些特殊的地方呢,于是我开始询问万能的 gpt
一些细节也不用看的特别细,非常琐碎
100 结论
这时已经真相大白,是因为这个项目的远程仓库地址,配置成了 https 格式,才导致每次远程操作都需要进行用户名、密码的校验
利用命令 git config remote.origin.url ssh://..
修改了远程仓库地址后,就正常了