1. git pull --rebase
- 这个命令是用来更新当前分支的,它会从远程仓库拉取更新,然后将你的本地提交重新应用到更新后的基础之上。
- 它相当于先执行 git fetch,然后在当前分支上执行 git rebase origin/。
- 使用 --rebase 而不是默认的 merge 可以保持历史记录更线性,这对保持提交历史的整洁有帮助。
2. git rebase origin/master:
- 这个命令是明确地将当前分支的提交重新应用到 origin/master 的基础之上。
- 它假定你已经更新了 origin/master,即可能需要先执行 git fetch origin。
- 适用于你在一个特性分支(feature branch)上工作,并希望在 master 分支的最新提交之上继续开发。
使用 git pull --rebase 的场景:
保持当前分支与远程分支同步:
当你在一个分支上工作,并且需要定期同步远程仓库中的最新变更以确保你的工作是基于最新代码进行的。
使用 git rebase origin/master 的场景:
特性分支开发:
当你在一个特性分支(feature branch)上工作,并希望将你的工作与 master 的最新变更结合在一起时。
一般执行git rebase origin/master之前,应该保证本地当前分支跟远程已经是同步的情况下, 不然单执行这条命令是无太大意义的
继续rebase
在执行上述任意一条命令后,假如出现了conflict,在手动解决conflict后,需要执行git rebase --continue
继续完成rebase,然后再add、commit、push