git amend记录

前提:在工作中常使用git amend commit用于追加一些小的变动, 然后再push到远程。但是有时候尴尬的发现,上次提交的已经被领导合入,无法再使用amend进行commit了,需要新commit一次。

但是本地已经修改了上次的commit!!!又不能用强制推送​git push --force-with-lease。

适用于:使用git ament commit ,但是未推送到远程分支的情况, 以下是一个优雅的解决办法:

步骤 -- 本地操作:
(1)首先,执行git reflog,查看git记录,找到amend前那次提交的hash值。
(2)然后,执行git reset xxxxx,xxxx对应要恢复到状态的hash值。 这个时候就恢复到了上次commit的状态。
(3)这个时候,就可以创建一个新的commit,进行push。 优雅解决啦~

如果大家有什么更好的方法也可以评论区交流哦。

参考链接:Git 如何撤销对 "git commit --amend" 的误用

相关推荐
lifewange8 小时前
常用的Git命令有哪些?
git
无限进步_8 小时前
【C++】电话号码的字母组合:从有限处理到通用解法
开发语言·c++·ide·windows·git·github·visual studio
C++ 老炮儿的技术栈9 小时前
GCC编译时无法向/tmp 目录写入临时汇编文件,因为设备空间不足,解决
linux·运维·开发语言·汇编·c++·git·qt
英俊潇洒美少年9 小时前
Git 常用命令速查表(前端开发专属版)
git
华科大胡子13 小时前
Git二分法定位Bug
git
m0_5791466515 小时前
Git暂存区操作与版本回退
git
三毛的二哥15 小时前
git:git worktree多任务并行开发
git
Yiyi_Coding15 小时前
Git 版本管理重要撤回操作
git
a里啊里啊16 小时前
Git常问面试题
git
达子66616 小时前
Git中文文件名乱码显示SHA-1 哈希值
git·算法·哈希算法