Git合并两次commit(重复push)为一次
一.场景说明:
本地修改好了代码,开开心心已经push到远程仓库后,结果发现本地居然有一个地方没有修改到!
这下只能重新提交咯…,但是按照最简单的方法本地重新add,然后commit,最后push.这样操作会导致最后有两条commit记录,根据开发规范,同一个issue的commit应该是一条!
二.解决步骤!
1.git pull拉取最新代码后,打开git log 发现我幸运的是最后一个commit的人(如果不是最后一次commit的情况下没有遇到过!)
2.确定好我是最后一个comit的前提下, git add 添加修改内容.
3.然后使 用git commit --amend 命令
该命令默认会打开vim编辑窗口,此时我不需要修改上一次的commit 信息,所以 q! 退出后即可.

4.最后重新按照正常的push命令push一次即可.

5.push完成后查看git log 发现只有一次commit 记录.
ok!
补充:
场景二:
push代码后,发现commit的message 不够完善, 场景为:当前push没有被远程merge,这个时候要修改commit的信息,
方法一:
可以使用 git commit --amend 在viw中修改,修改完成后, git push 到远程仓库.
风险: 存在风险,因为每次commit 都会生成一个不同的 commit id , 第二次 commit --amend 后生成的 id 变更了,可能会导致push出问题–未亲测.
方法二:
git reset 后重新 commit 然后push ,此方法没有风险.
总结:
git commit -m 命令可以合并多条commit信息为一条!
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)