首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么合并拉请求时需要将开发分支合并到特性分支?

为什么合并拉请求时需要将开发分支合并到特性分支?
EN

Stack Overflow用户
提问于 2019-10-31 06:42:05
回答 1查看 3.2K关注 0票数 4

我想将GitHub请求从我的特性分支合并到开发中。下面是GitHub通过命令行进行操作的说明:

步骤1:

代码语言:javascript
复制
git fetch origin
git checkout -b feature-branch origin/feature-branch
git merge development

步骤2:

代码语言:javascript
复制
git checkout development
git merge --no-ff feature-branch
git push origin development

为什么需要git merge development

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-10-31 06:54:03

这里的问题是,从最初从development创建特性分支的那一刻起,您和其他人都可能分别提交了特性分支和development分支。在这里,一个图表将是有帮助的:

代码语言:javascript
复制
development: -- A -- B -- C -- D
                      \
feature:               E -- F

在这里,您在development提交时从B分支,从那时起,您已经进行了F提交,其他人(甚至可能也是您)已经将CD提交到远程development分支。两个步骤中的第一个步骤是将development合并到您的特性分支中:

代码语言:javascript
复制
development: -- A -- B -- C -- D
                      \         \
feature:               E -- F -- M1

现在,您在本地有了一个M1合并提交,您的分支应该完全更新了CD提交中远程出现的所有内容。现在,您可以将您的特性分支合并到development中,让您拥有:

代码语言:javascript
复制
development: -- A -- B -- C -- D -- M2
                      \         \  /
feature:               E -- F -- M1

至于为什么需要这两个步骤,第一步确保您的本地特性分支与远程development上发生的一切保持最新,因为您最初创建了该分支。至少在某些时候,不执行此步骤将意味着合并将导致一些冲突。GitHub检测到了这一点,如果您不及时,通常会拒绝合并。第二个步骤可能是您所期望的步骤,它只是将您的特性分支实际合并到development中。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58638059

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档