2016-11-15 203 views
1

我们从'master'创建'dev'分支并一直在'dev'分支上工作。我们还没有将'dev'和'master'合并在一起。同时,我们还创建了'master'的'preprod'分支,并在'preprod'分支上进行了修改。我们尚未将'preprod'与'master'合并。Gitlab合并两个分支

现在我们试图实现的是将'preprod'变更单独合并到'dev'中。我通过Gitlab创建了一个合并请求并且批准了它。我发现'dev'代码中的变化也转移到'preprod',反之亦然。我不希望任何机会将'开发者'的改变转移到'前期制作'。我怎样才能做到这一点?

回答

1

如果你在两者上都有变化,你的合并请求可能会告诉gitlab把两个分支合并到一起,这有时是可取的。根据您的开发过程,您可能会发现使用git本身(或其gui,例如git扩展或sourcetree)更容易进行合并。 GUI版本在视觉上显示分支和过去的合并方面做得很好,这使得找出要运行的命令变得更容易。

在命令行,你回复后提交的gitlab合并之前,检查出的Dev分支和合并preprod进去:

git checkout dev 
git merge preprod 

的preprod变化将在开发作出反之则不行(不要忘记推动开发)。 git merge命令的作用是合并命令(preprod)INTO CURRENT分支中的命名分支(在本例中为dev,但可以验证当前运行“git branch”或“git status”的分支)的更改。

链接到我所提到的git的工具: git的扩展:https://sourceforge.net/projects/gitextensions/ SourceTree:https://www.sourcetreeapp.com/

+0

形式,源代码目录,我们应该执行这个命令? – SGN

+0

它可以在存储库的任何子目录中。如果您运行“git status”并查看您正在使用的存储库的详细信息,那么您就位于正确的位置。请注意,使用其中一个gui版本,您必须打开/导入回购;这只是意味着在本地机器上浏览到它的顶层目录。 – Andrew