Git Rebase 操作备忘

适用于个人开发分支同步 dev 最新代码。共享分支不要执行 rebase。

命令行操作

先确认当前分支和工作区状态:

bash 复制代码
git branch --show-current
git status

工作区有未提交修改时,先提交,或临时保存:

bash 复制代码
git add .
git commit -m "保存当前修改"
# 或:git stash push -m "rebase前临时保存"

同步并变基到远程 dev:

bash 复制代码
git fetch origin
git rebase origin/dev

如果当前分支已经推送过,变基完成后使用安全强推:

bash 复制代码
git push --force-with-lease origin 当前分支名

处理冲突

bash 复制代码
git status
# 手动解决冲突文件
git add 已解决的文件
git rebase --continue

重复处理直到变基完成。放弃本次变基:

bash 复制代码
git rebase --abort

IDEA 操作

  1. 点击右下角分支名,切换到自己的开发分支。
  2. 执行 Git → Fetch,拉取远程分支最新提交。
  3. 再次打开右下角分支菜单,选择 origin/dev。
  4. 点击 Rebase Current onto Selected(将当前分支变基到所选分支)。
  5. 出现冲突时,在 Git 工具窗口打开冲突文件,完成合并并点击 Apply。
  6. 点击 Continue Rebase 继续;不想继续时点击 Abort Rebase。
  7. 变基完成后 Push;若分支已推送,选择 Force push with lease。

Merge 和 Rebase 的选择

场景 建议
个人开发分支,仅自己使用 可使用 Rebase,历史更直观
已经被同事使用的分支 使用 Merge,避免改写提交历史
dev、main 等共享分支 不要直接 Rebase

rebase 会重新生成当前分支提交,因此已推送的个人分支也只能使用

--force-with-lease,不要直接使用 --force。

相关推荐
你叶不叶8 小时前
abap git 如何从 gitee上在线拉取数据(上一步已经配置好证书)
git·gitee·sap·abapgit
kuroomi1 天前
Git入门
git·kubernetes
daliucheng1 天前
lazygit 上手:日常 git 操作一篇讲完
git
codigger1 天前
大厂git提交规范
git·程序员
挖掘狂人1 天前
六条分支,一条主干:我的 Git 分支管理心得
git·后端·程序员
Brookty1 天前
Git与GitHub系统学习|本地Git工作模型:终端与进程、CWD、HEAD/Index/工作树及Git对象
git·github
2301_767113982 天前
点过“不再询问”就要检查:Claude Code权限文件也可能存着密钥
git·信息安全·claude code
江屿风2 天前
【Git-组件】【Git入门:从文档灾难到版本掌控】流食般投喂
运维·笔记·git·组件·版本控制
程序员沉梦听雨2 天前
【Git】fork工作流与上游同步
git