Git 更新分支到 master
Posted
技术标签:
【中文标题】Git 更新分支到 master【英文标题】:Git update branch to master 【发布时间】:2018-04-15 18:09:48 【问题描述】:我有一个 feature
分支正在处理。昨天我做了一个提交并将我的feature
分支合并到远程master
分支中。
现在我希望继续在我的分支上工作并添加更多功能。然而,从昨天开始,其他人已经向master
分支添加了一些额外的代码。如何“更新”我的 feature
分支,使其包含来自 master
的所有最新更改?
我显然可以拉出最新版本的 master
并简单地创建一个新的分支,但我想还有“更新”我当前的 feature
分支。
【问题讨论】:
【参考方案1】:是的,有办法根据最新的master
分支更新feature
分支。你只需要在feature
分支上执行命令:
# On feature branch
git pull origin master --rebase
现在feature
分支包含master
分支的最新更改。
【讨论】:
致投反对票的人:你试过这个命令吗,你能解释一下原因吗? 这似乎有效。虽然我在或多或少 2 步中完成了它首先拉主分支,然后将我的功能分支重新定位到主分支。上述命令是否同时执行这两项操作? 不,它只更新feature
分支。要更新master
分支,您应该在master
分支上执行git pull origin master
。
这会起作用,但似乎是一个不好的做法,因为它是从 master 合并的,最好分几个步骤完成,所以很明显这是你真正想要做的。许多人在分支上错误地运行该命令并想要拉取分支的远程版本,而是将 master 合并到他们的分支中。
@yorammi :当您说“pull 分支的远程版本”时,您的意思是“checkout”吗? Git 令人困惑,但 fetch 然后合并并不比 pull 更令人困惑;人们在真正尝试结账时仍然会这样做。【参考方案2】:
将功能分支推送到 master
-
如果其他开发人员将他们的功能分支推送到 master 分支,则更改为 master 分支并获取最新信息
git 结帐大师
git 拉
-
如果有人在您处理 featurebranch 时将更改推送到 master,则更改为 featurebranch 并将 master 合并到 featurebranch,这样您可能会遇到需要解决的冲突
git checkout 修补程序
git merge --no-ff origin master
-
将功能分支合并到主分支
git 结帐大师
git merge --no-ff origin 特性分支
【讨论】:
以上是关于Git 更新分支到 master的主要内容,如果未能解决你的问题,请参考以下文章