代码之家  ›  专栏  ›  技术社区  ›  Javingka

不同于:git合并分支与git合并主分支

  •  1
  • Javingka  · 技术社区  · 8 年前

    假设我在主分支中,我想合并一个名为“branch-a”的分支。

    调用或不调用主分支有什么区别?。i、 这样做

    $ git merge branch-A
    

    或者像这样:

    $ git merge branch-A master
    

    如果我颠倒顺序???

    $ git merge master branch-A 
    

    如果有的话,我想应该是简单的。我看不出有什么不同,但也许有一些我看不到的地方。谢谢

    3 回复  |  直到 8 年前
        1
  •  3
  •   Christoph-Tobias Schenke    8 年前

    git merge branch-A 将在分支A中所做的所有更改合并到当前分支(主分支)

    git merge branch-A master 将在分支A和主分支中所做的所有更改合并到当前分支。既然你已经在master上,它应该只合并branch-A

    git merge master branch-A 是一样的。将两个分支合并到当前分支,但顺序不同。

    换句话说: git merge A B C D 将分支A、B、C和D合并到当前签出的分支(例如主分支)。将分支作为参数传递的顺序是它们被合并的顺序。这在处理冲突时可能很有用。 合并的目标始终是您之前签出的分支。

        2
  •  1
  •   Community THelper    7 年前

    合并两个以上的分支称为 八达通合并

    通常,您不会希望合并当前所在的分支。 所以,我认为你不应该尝试合并 主分支 将其融入自身。

    第一个案例将合并 分支A 到当前(主)分支。

    对于第二种和第三种情况,当向git merge命令提供两个或多个分支时,它们将按照提供的顺序合并到当前分支中。

    例如:

    git merge branch-A branch-B
    

    这将把分支A合并到当前分支,然后再合并分支B

    这个答案解释了更多关于八达通合并的信息 Git octopus merge order of multiple branches

    您还将发现此文档很有用: https://git-scm.com/docs/git-merge

        3
  •  0
  •   Jonathan.Brink    8 年前

    如果您打开 master 你想合并 branch-A 进入 主人 实现这一目标的最直接方法是:

    # first make sure you are on master
    # (be on the branch you want to merge INTO)
    git checkout master
    
    # merge the other branch into master
    git merge branch-A
    

    doc :

    合并更改 从指定的提交 (自 历史与当前分支不同) 进入当前分支 .