git 如何revert指定范围内的commit并且只生成一个新的commit?
Git 如何 一个 生成 指定 范围 并且 commit
2023-09-11 14:16:48 时间
答:一共分成两步
一. revert多个commit并生成多个新的commit
git revert <old commit>^..<new commit>
二. 使用rebase将多个新的commit合并成一个commit
git rebase -i <base commit>
举例:
$git log
111111111 yes
222222222 no
333333333 yes or no
4444444444 no or yes
第一步: 执行git revert -n 333333333^..111111111将会生成一个commit,并且commit log将会变成如下状态:
777777777 Revert "yes or no"
666666666 Revert "no"
555555555 Revert "yes"
111111111 yes
222222222 no
333333333 yes or no
4444444444 no or yes
第二步: 执行git rebase -i 111111111
相关文章
- 一份两百亿阅读的 Git 教程!
- 产品管理开发之Git工作流和分支规范推荐
- 如何在 Git 里撤销(几乎)任何操作
- git如何删除远端不存在的本地分支?
- Git版本控制远程开发多人协作
- 打包上传VueCli项目到git仓库教程
- 如果代码已经由git管理,那么如何将这些代码推送到一个新的空仓库呢?
- git如何将旧commit的相关notes复制到新commit?
- git如何压栈某一个文件?
- git如何撤销git add操作?
- git如何列出分支之间的差异commit
- git如何回退单个文件到某一个commit
- 如何使用git把本地代码上传到远程仓库上
- GIT
- git 忽略文件
- git 查看/修改用户名、密码
- 浅析Git Subtree的原理与实际应用:git subtree是什么、子仓库与仓库共用、共用代码需求常规处理方式及为什么使用git subtree以及如何使用Git Subtree在多个Git项目间双向同步子项目
- 使用idea 把一个git分支的部分提交记录合并到另一个git分支上
- 六、Git简介
- git 本地提交后如果让服务器上的GIT 自动更新拉取
- Git发布2.10 - Push、Worktree、 格式等得到了改进