首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我是否可以在不将提交消息从分支推送到主分支的情况下进行真正的git合并?

我是否可以在不将提交消息从分支推送到主分支的情况下进行真正的git合并?
EN

Stack Overflow用户
提问于 2012-11-03 20:14:35
回答 2查看 1.4K关注 0票数 1

我正在将来自稳定分支的更改合并回开发分支。我希望它是一个“真正的”合并,我的意思是当我执行git --graph --oneline时,它应该显示一个合并。

问题是,我不想提交来自分支的所有消息,而只想提交我的合并提交消息。(我们开发人员的提交消息必须符合特定的模式,由远程钩子强制执行,但分支上的一些提交来自不需要遵守的“发布”用户。)

有没有一种方法可以在不从分支推送提交消息的情况下执行“真正的”合并?

下面是我目前的合并方式(来自master):

代码语言:javascript
复制
git merge -s recursive -X ours --no-commit 1.0_BRANCH

下面是我提交后的(经过清理的)图,这正是我想要的:

代码语言:javascript
复制
*   b3492a7 - (HEAD, master) DEV-3: Merging patch fix onto master <graham>
|\  
| * eec2ef6 - (origin/1.0_BRANCH, 1.0_BRANCH) [maven-release-plugin] prepare for next development iteration <release>
| * c14dee4 - (application-1.1) [maven-release-plugin] prepare release application-1.1 <release>
| * 40687a4 - DEV-3: Fix to go into the patch <graham>
| * 4e71c98 - [maven-release-plugin] prepare for next development iteration <release>
| * c8828bb - (application-1.0) [maven-release-plugin] prepare release application-1.0 <release>
| * 46a9a59 - [maven-release-plugin]  copy for branch 1.0_BRANCH <release>
* | 5ca3ec6 - (origin/master, origin/HEAD) DEV-2: First feature commit of next release <graham>
* | bd797d3 - [maven-release-plugin] prepare for next development iteration <release>
|/  
* afff00f - [maven-release-plugin] prepare branch 1.0_BRANCH <release>
* b9329fb - DEV-1: Last feature commit before release <graham>

我的问题是,当我尝试推送时,我们的远程钩子拒绝推送,因为eec2ef6中的提交消息不一致,而我不是release用户。我是否可以仅使用来自b3492a7的消息来推送合并,或者必须压缩合并(我相信这意味着图形不会将其显示为合并)?

EN

回答 2

Stack Overflow用户

发布于 2012-11-03 20:19:20

如果遥控器不知道提交的所有父项,则无法推送合并。

您要么必须压缩,正如您猜测的那样,这将破坏该分支的历史并合并,或者理想情况下,您可以更改您的远程git钩子,使其在拒绝的内容方面更智能一些。也许它可以忽略来自“release”用户的所有提交。

票数 2
EN

Stack Overflow用户

发布于 2012-11-05 15:51:41

你当前的模型似乎意味着只有用户'release‘才能将一个功能分支合并回dev;这是不现实的,因为只有开发人员才能正确地管理这样的合并。

如果你能改进钩子,你可以使用类似于“Have remote git repository refuse merge commits on push”中介绍的算法:

通过使用git rev-list --parents <OLD>..<NEW>,您可以确定其中一个父级是否包含<release>,并选择允许这样做。

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

https://stackoverflow.com/questions/13209077

复制
相关文章

相似问题

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