使用 rebase 修改 Git 的提交顺序和并提交

先说问题 >

一次性修改了很多文件,这些文件分布在不同的文件夹里面,在提交的过程中遗漏了一个文件夹的文件,但是发现的时候已经提交了其他的文件(不能用 git commit -amend)。但是还想把遗漏的文件和并到文件夹的那次提交中。

使用 rebase 修改 Git 的提交顺序和并提交_第1张图片
提交过程

解决方案 >

  • 正常提交这个文件,这样会生成一条提交历史(需要将倒数第一条[最上面]和并到倒数第四条中)
使用 rebase 修改 Git 的提交顺序和并提交_第2张图片
提交历史
  • 使用git rebase -i HEAD~4(会进入rebase的编辑界面,我的是vim编辑器)
使用 rebase 修改 Git 的提交顺序和并提交_第3张图片
rebase交互界面
  • 修改提交的历史
    • 将第四条移动到第一条 dd删除p粘贴
    • 将pick修改为f
使用 rebase 修改 Git 的提交顺序和并提交_第4张图片
修改之后的情况
  • 保存推出
  • 查看提交历史git log --stat
使用 rebase 修改 Git 的提交顺序和并提交_第5张图片
提交历史

你可能感兴趣的:(使用 rebase 修改 Git 的提交顺序和并提交)