【发布时间】:2016-10-26 22:59:33
【问题描述】:
我已经设置了 Gitlab,我正在尝试遵循此处提到的工作流程:Gitlab Production branch flow.
现在我的存储库如下所示:
我被要求仅将master 分支的commit A 与production 分支合并。最好的方法是什么?
我应该使用git cherry-pick 命令吗?我读到我会用cherry-pick 放开版本历史。
如果我遇到这种情况,我需要将之前的提交从 master 分支合并到 production 分支,我该如何处理?
我被困在这个问题上。非常感谢任何帮助。
谢谢,
更新:从主分支我只能推送特定的提交:
git push <remotename> <commit SHA>:<remotebranchname>
在这里找到答案:How can I push a specific commit to a remote, and not previous commits?
【问题讨论】:
-
A和X之间有什么关系吗?
-
没什么。 x 是合并到生产分支的最新提交,并部署到生产服务器。实际上,在我的存储库中,提交 A 代表了一个小功能。它已经完成,但没有投入生产,我继续致力于其他功能。现在我只想将功能 A 推送到生产环境中。
-
那么您可以简单地合并 A 提交。实际上,给定的答案就是这样。
-
cherry-pick?我想避免这种情况。我找到了另一种方法:git checkout -b branch_x commit_hash。然后我可以将 branch_x 与生产合并并删除 branch_x。我做得对吗?
标签: git deployment gitlab git-flow git-cherry-pick