【问题标题】:git merge pull branches confusiongit merge pull 分支混乱
【发布时间】:2012-12-03 00:15:33
【问题描述】:

我有 2 个分支(master 和 dev)。另一个工作人员已将一个名为 stage 的新分支推送到存储库中,因此该 stage 现在比 master 提前 1 个提交。我正在尝试拉下舞台,以便可以将其合并到 master 中(从而合并到 dev 中),但是我在拉下舞台时遇到了问题。如何拉下干净版本的舞台?

【问题讨论】:

    标签: git git-branch bitbucket git-merge git-pull


    【解决方案1】:

    我认为您在这里不了解 Git 的分支基础知识。通过示例阅读我的回答后,您可能会了解更多。

    说来话长

    您应该获取所有更新

    git fetch --all
    

    那么你应该看到现在仍然是远程分支:

    git branch -a
    [...]
    remotes/origin/stage
    

    可选,您可以通过签出将此分支设为本地分支stage(不必具有相同的名称)

    git checkout -b stage origin/stage
    

    你应该用这个切换到这个分支。

    现在回到 master 并合并它:

    git checkout master
    git merge origin/stage # or just 'stage' if you have it local
    

    拉魔法

    现在,可以将fetchmerge 两个步骤合并为一个pull。但是,有时需要获取新的分支及其头部才能指定它们。

    git pull origin stage
    

    【讨论】:

      【解决方案2】:

      这应该可行:

      git checkout master
      git pull origin stage
      

      考虑到 master 根本没有链接到 stage,您需要指定从哪里拉取,以及要合并什么。
      见:

      【讨论】:

      • origin/stage ,尝试添加为编辑,但显然需要 6 个字符来解决语法问题。
      • @sjakubowski git pull origin stage 这里就像git pull origin master:stage:它在当前分支中合并远程分支stage,如git pull的示例部分所示:git-scm.com/docs/git-pull#_examples
      猜你喜欢
      • 2011-02-05
      • 1970-01-01
      • 1970-01-01
      • 2012-10-30
      • 2018-03-05
      • 2020-07-27
      • 1970-01-01
      • 2014-03-12
      • 1970-01-01
      相关资源
      最近更新 更多