| 上一篇 | 下一篇 |
|---|---|
| 改分支名 |
rebase 到某个有新提交的远程仓库的分支
以 rebase 远程仓库的 master 主分支为例
rebasede的结果默认是按时间排的
当本地克隆远程仓库的主分支后,远程仓库主分支被别的同事更新了,但是本地仓库主分支并没有拉取最新的提交,此时还想 rebase 远程仓库主分支的就需要先拉取远程仓库主分支的最新提交。具体如下:
比如想在 dev/liangxiao 分支下 rebase 远程仓库主分支(将 dev/liangxiao 分支变基到远程仓库的主分支的最新提交上):
bash
# 查看本地 master 是否落后于远程
git log --oneline master..origin/master
# 先拉取远程更新(不会改你的分支)
git fetch origin
# 直接变基到远程 master
git rebase origin/master
例如:

执行之后,由于 rebase 会重写提交历史 (改变 commit hash),所以不能 使用普通的 git push,必须使用强制推送来更新远程分支:
bash
# 推荐使用 --force-with-lease(更安全的强制推送)
git push --force-with-lease origin <你的分支名>