首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >什么时候git拉动多个分支之间的合并?

什么时候git拉动多个分支之间的合并?
EN

Stack Overflow用户
提问于 2013-01-10 19:45:05
回答 1查看 549关注 0票数 1

在切换到开发分支之后,我试图了解git将我正在处理的一个特性分支合并到主开发分支中的情况。

我能够恢复合并,但它花了一天的大部分时间来完全解决,我想在将来避免它。

以下是工作流程:

在处理我的特性分支之后,我需要处理一个bug修复程序。我的特性分支(参考文献/头/功能/上载器/90)与主要开发分支保持一致:

代码语言:javascript
复制
git merge origin/develop

然后我需要转到开发部门:

代码语言:javascript
复制
git checkout develop

git产出:

切换到分支‘发展’你的分支落后于‘起源/发展’88提交,并可以快速转发。

然后,当我发出拉:

代码语言:javascript
复制
git pull origin refs/heads/develop

由于某些原因,它看起来像是git决定将我的特性分支合并到开发中,输出如下所示:

代码语言:javascript
复制
branch develop -> FETCH_HEAD
Fast-forwarding to: 102301bcc51fc6d7978e5287df9d031d82e53bc9
Trying simple merge with d139bab0a96df01408f82110e38b6e0b6b98e6e6
Merge made by the 'octopus' strategy.

我的提交日志向我展示了提交:合并分支的特性/uploader/90和github.com的“开发”:MakerStudio/仪表板

EN

Stack Overflow用户

回答已采纳

发布于 2013-01-10 19:52:51

这就是所谓的快进合并。

在您进行合并时(默认情况下),您所在的分支中的所有更改都已经出现在您要合并的分支中。

因此,由于在上面的示例中,refs/heads/feature/uploader/90已经包含了refs/heads/develop中的所有更改,而不是创建真正的合并提交,因此git只是将ref develop移动到指向与feature/uploader/90相同的提交。

您可以通过执行不会快速转发的git merge --no-ff或将merge.ff属性更改为false来避免这种行为。

取消不想要的快速进合并并不像你想象的那么困难:只需在合并之前提交最后一次提交即可。

票数 2
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14266010

复制
相关文章

相似问题

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