基于Git Rebase实现特性分支同步开发分支的命令正确性问询
如何将development分支的最新提交同步到feature分支?
你的思路方向是对的,但命令顺序和细节上有点小问题,调整后就能完美实现你想要的效果——让feature分支看起来像是基于最新的development分支重新创建的。我帮你梳理下正确的操作步骤:
首先,确保你本地的development分支是最新的:
- 切换到development分支:
git checkout development - 拉取远程development的最新提交:
git pull origin development
然后切换到你的feature分支(注意不要用-b参数,因为-b是用来新建分支的,你已经有my-feature-branch了,用这个参数会报错):git checkout my-feature-branch
最后执行rebase操作,把development的最新提交“移”到你的feature分支提交前面:git rebase development
小提醒:
如果rebase过程中遇到冲突,别慌——Git会提示你冲突的文件,你手动修改这些文件解决冲突后,执行:git add .
然后继续rebase:git rebase --continue
要是中途不想继续了,也可以用git rebase --abort回到rebase前的状态。
为什么你的原命令不行?
git pull origin没有指定分支,它只会拉取你当前所在分支的远程更新,没法保证development是最新的;git checkout -b my-feature-branch是创建新分支的命令,而你已经有这个分支了,运行这个会提示分支已存在,没法切换过去。
内容的提问来源于stack exchange,提问作者once
相关产品推荐
相关产品推荐

