Git Rebase分支合并

Git Rebase 的应用场景,包括如何合并多
次提交记录和分支合并
// 1.分支合并
从master切一个开发分支 feature1
git checkout -b feature1
// 2.代码开发完提交代码后,回到master拉取最新代码
git checkout master & git pull
// 3.回到feature1进行代码合并
git checkout feature1
git rebase master
在rebase过程中,也许会出现冲突
conflict。这种情况git 会停止reabse 并让
你解决冲突。修改掉冲突后去更新这些内容。
git add.
git rebase --continue
直到没有冲突时,强行提交
git push -f origin feature1
// 4.最后回到master 代码合并
git checkout master
git pull
git merge feature1
git push


在任何时候我们都可以用git rebase --abort
参数终止 rebase 行动,并回到 rebase 开
始前的状态。
 

 

### 使用 `git rebase` 合并分支 当需要将某个分支的更改应用到另一个分支时,可以使用 `git rebase` 命令来实现。此命令的核心功能是将当前分支的历史记录重新定位到指定分支的最新提交之上。 通过执行以下命令,可以在开发流程中完成分支合并的任务: ```bash $ git checkout dev # 切换至目标分支 (dev) $ git rebase master # 将 dev 分支基于 master 的最新状态进行重写 ``` 上述操作会把 `dev` 分支上的所有提交移动到 `master` 分支最新的提交之后[^1]。这样做的好处是可以保持线性的历史记录,使项目日志更加清晰易读。 #### Git Rebase 的基本原理 `git rebase` 实际上是从一个分支取出一系列提交,并将其逐一应用于另一个分支的基础之上。这种行为不仅限于简单的合并,还可以用来调整提交顺序、压缩多个提交成单个提交等复杂场景[^2]。 如果在 rebase 过程中有冲突发生,则需解决这些冲突后再继续处理剩余部分: ```bash $ git rebase --continue # 解决冲突后继续rebase过程 ``` 或者中断整个 rebase 流程: ```bash $ git rebase --abort # 中断并恢复原始分支状态 ``` 下面是一个完整的例子展示如何利用 `git rebase` 来整理工作流中的分支关系: 假设我们有两个分支分别是 feature 和 main 。现在希望让 feature 上的工作建立在main最近的状态下而不是旧版本基础上, 可以按照如下方式操作: ```bash $ git checkout feature # 转到feature分支 $ git rebase main # 把feature分支变基到main分支顶端 ``` 此时假如存在任何文件修改冲突情况的话,Git将会暂停下来提示用户手动修正;一旦解决了所有的冲突点就可以再次输入 `$ git add .` 加入改动再接着运行 `$ git rebase --continue` 完成剩下的步骤. 最终得到的结果就是一条干净整齐不含分叉路径的日志链表形式呈现出来. ### 注意事项 尽管 `git rebase` 提供了许多便利之处,但在公共共享仓库里要谨慎运用它因为这可能引起其他协作者遇到难以预料的问题由于改变了已推送出去的内容结构所致.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值