Gitlab合并两个分支

10

我们从'master'创建了'dev' 分支,并一直在'dev'分支上进行开发,但尚未将'dev'合并到'master'中。同时,我们还从'master'创建了 'preprod' 分支,并在'preprod' 分支上进行更改,但尚未将'preprod'合并到'master'中。

现在,我们要实现的是仅将'preprod'更改合并到'dev'中。我通过Gitlab创建了一个合并请求并得到批准,但我发现'dev'代码中的更改也被移动到了'preprod'分支,反之亦然。我不希望任何情况下都会将'dev'更改移动到'preprod'分支。我该如何做到这一点?

1个回答

6
如果你在两个分支上进行了更改,很可能你的合并请求告诉gitlab将这两个分支彼此合并,这有时是可取的。根据你的开发流程,你可能会发现使用git本身(或其gui,例如git extensions或sourcetree)来执行合并更容易。GUI版本可以很好地显示你的分支和过去的合并,这使得弄清楚要运行哪些命令变得更加容易。
从命令行,在回退到gitlab合并之前的提交后,检出dev分支并将preprod合并到它中:
git checkout dev
git merge preprod

预生产环境的更改将在开发环境中进行,但反之则不然(不要忘记推送开发环境)。git合并命令的作用是将命令中指定的分支(预生产)的更改合并到当前分支中(在本例中为dev,您可以通过运行"git branch"或"git status"来验证当前分支)。
我提到的git工具链接: git扩展:https://sourceforge.net/projects/gitextensions/ SourceTree:https://www.sourcetreeapp.com/

我们应该从哪个源代码目录执行这个命令? - SGN
它可以在存储库的任何子目录中。如果您运行“git status”并查看有关您正在使用的存储库的详细信息,则说明您已经到了正确的位置。请注意,对于其中一个GUI版本,您需要打开/导入存储库;这只是意味着在本地计算机上浏览到其顶级目录。 - Andrew

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接