git rebase 操作记录

git rebase

  1. 切换到开发分支dev
git checkout dev
  1. rebese master分支
git rebase master
  1. 解决冲突
git add .
git rebase --continue

如果有多个冲突需要多次重复命令直到rebase完成(比merge麻烦)

  1. 合并dev
git chekout master
git merge dev
git push
  1. 提交dev
git push --force--with--lease origin dev

直接git push会报错,因为不能fast-forward合并,需要强制提交,但千万不要直接** --force **提交,会强制覆盖!!!
--force--with--lease在强制覆盖前会进行一次检查如果其他人在该分支上有提交会有一个警告,此时可以避免福改代码的风险。

### 如何进行Git Rebase操作 在多人协作环境中,`git rebase` 是一种用于更新本地分支的方法之一。通过变基可以将当前分支上的更改应用到另一个最新的分支上,从而保持线性的历史记录。 #### 执行Rebase操作 要执行一次简单的rebase操作,假设目标是让特性分支基于最新版本的主干分支: ```bash $ git checkout feature_branch # 切换至待处理的功能分支 $ git fetch origin # 获取远程仓库中的最新数据 $ git rebase origin/main # 将功能分支重新定位到main分支顶端 ``` 如果希望以交互方式完成上述过程,则可采用如下指令[^2]: ```bash $ git rebase -i HEAD~N # N代表想要追溯的历史数目 ``` 此时会打开一个文本编辑器显示最近几次提交的信息列表,在这里可以根据需求调整顺序、修改消息甚至删除某些条目后再继续变基流程。 #### 解决常见的Rebase错误 当遇到冲突或其他异常情况时,按照提示逐步解决问题即可恢复正常工作流;对于一些特定类型的失败情形有专门应对措施: - **未指明基础提交**:确认命令格式无误并提供完整的参数说明,比如 `git rebase target_branch_name` 或者利用交互模式 `-i` 参数来指定范围。 - **中途取消正在进行的操作**:可以通过运行 `git rebase --abort` 来安全地中止整个重写进程而不影响原始状态[^4]。 - **已完成部分变更但无法继续前进**:先尝试解决所有现存文件级别的分歧再输入 `git add .` 添加已修正的内容最后用 `git rebase --continue` 命令恢复进度直至结束全部任务。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值