Eki*_*bal 49 git branch github git-merge
我在一个月前为我的代码创建了一个新的分支,我从develop分支创建了feature1分支.
? git branch
develop
* feature1
Run Code Online (Sandbox Code Playgroud)
我已经在feature1上工作了一个月了,并且很多更改都推动了开发分支,如何在开发一个版本的最新提交中更新我当前的分支feature1?
我不想签出master并合并我的feature1分支.我也不想使用git cherry-pick手动将提交从开发转移到feature1.
有帮助吗?
mus*_*iKk 75
你只需将develop合并到feature1:
git checkout feature1
git merge develop
Run Code Online (Sandbox Code Playgroud)
没有必要涉及另一个分支,如主人.
sta*_*ave 15
首先,您需要更新您的开发分支,然后签出功能并对其进行合并/重新设置基础。
git checkout develop
git pull
git checkout feature/myfeature
Run Code Online (Sandbox Code Playgroud)
现在您可以在运行之间做出决定:
git merge develop
git rebase develop
Run Code Online (Sandbox Code Playgroud)
merge和之间的区别rebase是rebase保留分支中所有提交的历史记录,如果您的部分提交有很多值得保留的内容,则这很重要。
rebase在某些团队中,该选项是必需的。
准备就绪后,您可以推送到自己的分支(例如,对于拉取请求)
git push origin feature/myfeature
Run Code Online (Sandbox Code Playgroud)
这个用例对于保持更新你的 PR 分支非常有帮助。首先,我建议您先获取远程更改,即git fetch
,然后从develop,但从远程更改,例如合并或变基
git rebase -i origin/develop
Run Code Online (Sandbox Code Playgroud)
或者
git merge origin/develop
Run Code Online (Sandbox Code Playgroud)
这样你就可以更新你的 PR 分支,而无需在分支之间来回切换。