master分支代码想删除某个版本之后的所有提交:
这里删除指定版本后的所有提交记录,区别于回滚代码到指定版本,是删除,不是回滚,注意、注意!
参考:https://www.jianshu.com/p/335e5ac0a823
查看提交日志
git网站查看(这里是码云)
git 命令查看
#查看提交日志
git log
#查看最近3条提交日志
git log -3
确定要删除的版本(示例里是想删除备注为1之后的所有版本),复制id;git rebase -i {id} 命令修改commit记录
#删除版本id为7909fa795415e377ad74829c04718ef2b24ad199之后的所有提交记录
git rebase -i 7909fa795415e377ad74829c04718ef2b24ad199
执行命令后,命令窗口会默认vim方式打开一个新视图,这里会筛选出指定版本之后的提交记录,电脑切换到英文输入法,键盘按i进入编辑模式,方向键控制光标位置,把想要删除版本所在行的第一个单词 pick 改为drop
改为drop之后,按Esc键退出编辑模式,输入:wq保存修改并退出
保存之后,强制push到master分支(这里用自己的分支名),然后查看日志,可以看到指定版本之后的代码提交记录被删掉了
#强制提交代码到指定分支
git push origin master -f
git网站查看,确认记录已被删除