如果git克隆代码时是别人的账号,现在自己接管了这台电脑。git global全局设置自己的用户名和邮箱。一顿输出猛如虎,登录自己的git,一看代码上传记录。提交人是自己,推送人还是前人,就很难评。
一:首先说踩坑的历程
踩坑一:设置(或重设)仓库层面的用户名和邮箱。
git config user.name "your_name" # 设置(或重设)仓库层面的用户名
git config user.email "your_email" # 设置(或重设)仓库层面的邮箱
git config --local --list # 查看仓库配置
亲测并无变化。config.user 的设置只和提交人一致。如果你不设置local仓库的,默认使用global的。完全可以不用设置仓库层面的。
git config --unset user.name # 取消仓库层面的用户名
git config --unset user.email # 取消仓库层面的邮箱
踩坑二:重新生成公钥
ssh-keygen -t rsa -C "your_email"
生成的秘钥文件在 C:\Users\用户名\.ssh 目录下,其中 id_rsa 是私钥,id_rsa.pub 是公钥。在服务器端 SSH公钥 添加 id_rsa.pub 文件。
亲测无效。
二:解决方案
方法一:重新拉取代码,和前人的代码彻底分家。
git clone 仓库地址 文件夹名 # 不需要引号
方法二:还是原来的代码,用新的凭据。
- step1:删除前人的凭据
- step2:执行git pull,会让你重新输入账户密码。输入自己的即可。
另:补充删除凭据的两种方式
- 方式一:打开 控制面板 -> 用户帐户 -> 管理Windows 凭据-Windows 凭据-普通凭据,将这个项目线上地址相关的凭据删删掉。
- 方式二:如果安装了Sourcetree,工具-选项-验证,找到相关凭据删删掉。
The end.