git rebase -i 合并提交记录
时间: 2025-01-16 20:06:34 浏览: 50
### 如何使用 `git rebase -i` 命令合并多个提交记录
#### 准备工作
确保当前位于想要进行提交合并的 Git 仓库内。
#### 发起交互式变基
为了合并最近 n 次的提交,可以在命令行输入如下指令:
```bash
git rebase -i HEAD~n
```
这里的 `HEAD~n` 表示从最新的提交向前数第 n 个父节点作为起点开始变基过程[^2]。
#### 处理交互界面
上述命令会启动默认文本编辑器(通常是 Vi 或 Vim),显示一系列待处理的提交项列表。每一条目之前都有一个动作关键字,默认是 `pick`,表示保留该提交不变。如果希望合并某些提交,则需将这些条目前的关键字改为 `squash` 或者简称 `s`,这意呈着“压平”,即把这些选中的提交与其前一提交合并在一起形成一个新的单一提交[^5]。
对于每一个被标记为 squash 的提交,在保存并退出编辑器之后会被询问是否修改其提交信息以及之前的提交描述也会随之更新。此过程中若有任何文件发生冲突则需要手动解决冲突后再继续变基流程;具体做法是在解决了所有冲突后运行下面两条命令:
```bash
git add .
git rebase --continue
```
当遇到错误提示无法完成某一步骤时,可以通过执行 `git rebase --edit-todo` 来修正未完成的任务列表,并尝试再次推进变基进程[^3]。
#### 完成变基
一旦所有的提交都按照预期进行了调整并且没有任何剩余的冲突等待解决,那么整个变基操作就完成了。最终的结果就是原本分散的小型提交已经被整理成了更简洁明了的历史记录。
阅读全文
相关推荐


















