在IntelliJ IDE中使用Git合并分支

Dev*_*ate 2 git merge intellij-idea

我知道有很多问题,但是我遇到了麻烦。首先,我使用的是Webstorm(IntelliJ),而不是命令行。其次,这似乎因观点而异。

很明显,我有我的主分支。我创建了一个名为“ InlineEditing”的新分支。我已经在这个分支机构工作了几天。master分支没有更改。现在,我想将当前分支中的所有更改移回主服务器,然后从那里继续工作。

在Webstorm中,以InlineEditing作为当前分支,我尝试使用以下方法进行合并,但似乎没有任何作用。即,当我然后结帐master分支时,它是旧代码。

在此处输入图片说明

所以我的问题是,将当前分支“合并”回主服务器的正确方法是什么?

dgr*_*raf 23

您通常有两个合并用例。

  1. 第一个用例正如您已经描述的那样:主分支中没有变化。在这种情况下,合并非常简单,请参阅下图的步骤。

场景_1

  1. 第二个用例有点复杂:主分支中有一些变化。您要先更新母版和 InlineEdit,然后将 InlineEdit 合并到母版中。请参阅下图中的步骤。

场景_2


Tim*_*sen 8

您遵循的标准工作流程如下所示:

git checkout InlineEditing
# work work work
git commit -m 'finished my work'

# now switch to master and merge the feature branch into it
git checkout master
git merge InlineEditing
# resolve any merge conflicts; IntelliJ is great for this step
Run Code Online (Sandbox Code Playgroud)

master为了将另一个分支合并到其中,您不得不切换到它可能有点违反直觉。相反,您可能希望能够从前一个分支合并InlineEditingmaster其中。这就是Git的工作方式。

关于您最初关于IntelliJ的问题,只要您知道自己在做什么,我认为将GUI工具用于Git并没有错。我倾向于从命令行执行大多数Git操作,因为我经验丰富,而且命令行功能强大。但是在很多情况下,我使用诸如IntelliJ之类的工具。例如,与命令行相比,在IntelliJ中解决合并冲突要容易得多。而且,使用GUI工具可以更轻松地可视化分支的历史记录。