|
@@ -0,0 +1,37 @@
|
|
|
+# git rebase
|
|
|
+
|
|
|
+> 将 commits 从一个分支合并到另一个分支上。
|
|
|
+> 常用于跨分支的 commits 合并,在被合并分支的最头部构建新的 `commit`,表示合并完成。
|
|
|
+> 更多信息: <https://git-scm.com/docs/git-rebase>.
|
|
|
+
|
|
|
+- 在另一个分支的头节点合并当前分支:
|
|
|
+
|
|
|
+`git rebase {{目标分支}}`
|
|
|
+
|
|
|
+- 启动交互式的合并任务,允许对提交的内容进行重新排序、省略、合并或修改:
|
|
|
+
|
|
|
+`git rebase -i {{目标分支或 commit 的 hash}}`
|
|
|
+
|
|
|
+- 处理完冲突文件后,继续执行合并任务:
|
|
|
+
|
|
|
+`git rebase --continue`
|
|
|
+
|
|
|
+- 跳过冲突文件,继续执行合并任务:
|
|
|
+
|
|
|
+`git rebase --skip`
|
|
|
+
|
|
|
+- 终止正在执行中的合并任务(例如:对于正处于解决冲突中的任务,将其打断,恢复到合并前的状态):
|
|
|
+
|
|
|
+`git rebase --abort`
|
|
|
+
|
|
|
+- 将分支的部分 commits 生成新的 `commit`,移动到新分支的头节点:
|
|
|
+
|
|
|
+`git rebase --onto {{目标分支}} {{当前分支}}`
|
|
|
+
|
|
|
+- 启动交互式的合并任务,对最近提交的 5 个 commits 进行重新排序、省略、合并或修改:
|
|
|
+
|
|
|
+`git rebase -i {{HEAD~5}}`
|
|
|
+
|
|
|
+- 以当前分支优先的策略,自动处理分支间的冲突,执行合并:
|
|
|
+
|
|
|
+`git rebase -X theirs {{分支名称}}`
|