git提交人、推送人不一致的问题

如果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.

### 可能的原因分析 Git 提交推送按钮可用可能由多种原因引起,以下是常见的几种情况及其解决方案: #### 1. **未配置全局用户名邮箱** 如果用户的 Git 配置中缺少全局用户名邮箱,则可能导致提交功能无法正常工作。可以使用以下命令检查当前的配置状态: ```bash git config --global user.name git config --global user.email ``` 如果没有返回任何值或者正确,可以通过以下命令设置: ```bash git config --global user.name "Your Name" git config --global user.email "your-email@example.com" ``` #### 2. **未跟踪的工作目录或暂存区为空** 当工作目录没有任何更改被追踪时,提交按钮会处于禁用状态。确保有文件已被修改并已添加到暂存区: ```bash git add . ``` 之后再尝试提交。 #### 3. **远程仓库未关联** 如果本地分支尚未与远程仓库建立连接,那么推送按钮可能会失效。通过以下命令确认是否存在有效的远程仓库链接: ```bash git remote -v ``` 若无有效链接,需手动添加远程仓库地址: ```bash git remote add origin https://github.com/username/repository.git ``` #### 4. **权限足** 对于某些受保护的分支(如 `main` 或 `master`),可能存在严格的访问控制策略。这通常发生在企业环境中使用的工具链上,比如 Jenkins 的插件管理[^1]。在这种情况下,建议联系管理员获取适当的角色授权。 另外,在 Windows 平台上自定义脚本路径也可能影响操作流程[^2]。例如,错误地映射批处理文件位置会影响实际执行效果。 #### 5. **编码格式问题** 由于同操作系统间默认字符集差异较大,因此上传过程中容易遇到编码转换失败的情况。特别是涉及中文注释或其他非ASCII字符的内容更容易引发此类异常[^3]。推荐始终采用 UTF-8 编码保存源代码文档,并告知团队成员统一标准。 --- ### 综合解决方法 针对上述提到的各种可能性逐一排查即可找到根本原因所在。具体步骤如下所示: - 检查基本环境变量设定; - 添加必要的改动至索引阶段; - 明确指定目标服务器URL; - 确认个账户具备相应权利; - 调整IDE内部选项以匹配国际化需求;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值