我可以将更新的分支合并到多个功能分支中而不检查每个分支吗?

Can I merge an updated branch into multiple feature branches without checking each of them out?

这是一个场景。

服务器上有原来的main develop Branch,还有一个Version Branch。开发分支都有修复 (1_otherFix Branch),版本 Branch 有 (2_otherFix Branch)。两个修复程序已合并。

服务器

develop Branch (Original)
---------------------------------------------------------------
     \                             \ 1_otherFix Branch /
      \                             \-----------------/
       \ versionX Branch
        \------------------------------------------------------
                        \ 2_otherFix Branch /
                         \-----------------/          

我的环境

我创建了一个主要开发分支 (myDevelop) 的克隆,其中一个版本分支 (myVersionX) 是通过签出生成的。 (git 结帐版本 X)。

然后我从 myVersionX 分支创建了一个新分支 (myFix)。

myDevelop Branch (clone)
---------------------------------------------------------------
      \                             
       \ myVersionX Branch
        \------------------------------------------------------
               \
                \ myFix Branch
                 \---------------------------------------------

objective 是为了更新克隆、我的主要开发分支 (myDevelop)、我的版本分支 (myVersionX) 以及我的修复分支 (myFix),以便它们都包含 2 个合并修复从服务器 (1_otherFix Branch) 和 (2_otherFix Branch).

如何使用 "git pull" 更新我环境中的所有 3 个分支?

我可以从 (myFix) 分支做一个 "git pull" 让它更新所有 3 个吗?

myDevelop Branch (clone)
---------------------------------------------------------------
      \                             
       \ myVersionX Branch
        \------------------------------------------------------
               \
                \ myFix Branch
                 \---------------------git pull------------------

我是否必须导航到每个分支并执行 "git pull"?

myDevelop Branch (clone)
------------------------------1 - git pull---------------------
      \                             
       \ myVersionX Branch
        \------------------------2 - git pull-------------------
               \
                \ myFix Branch
                 \-------------------3 - git pull-----------------

我是否必须导航到每个分支并使用特定名称执行 "git pull"?

myDevelop Branch (clone)
------------------------------1 - git pull develop------------------
      \                             
       \ myVersionX Branch
        \------------------------2 - git versionX-------------------
               \
                \ myFix Branch
                 \-------------------3 - git pull-----------------

我可以从 myFix 分支完成所有 3 次拉取吗?

myDevelop Branch (clone)
---------------------------------------------------------------
      \                             
       \ myVersionX Branch
        \------------------------------------------------------
               \
                \ myFix Branch
                 \---------------------git pull develop-------------
                                       git pull versionX
                                       git pull

有没有更简单的方法来更新所有 3 个?

是的,您需要检查每个分支并合并原始 develop 分支。

首先获取作为 "hosting" 原始开发分支的远程,以确保您的本地 GIT 存储库知道此远程上的更改,然后,git checkout 您的每个3 个分支并执行 git merge myRemote/develop.

作为旁注,我从不建议使用 git pull,因为它并不能真正帮助理解引擎盖下的 GIT(即使它只是一个 git fetch + git merge)。