【问题标题】:Git pull a branch from a different repositoryGit 从不同的存储库中拉出一个分支
【发布时间】:2026-01-01 00:00:01
【问题描述】:

我当前的存储库中的文件很少。我想合并来自不同存储库的远程分支。

  1. github.com/username/code.git(分支加载器)拉取并合并一个分支
  2. 然后从github.com/username/code.git拉合并一个分支(分支登录)

是否有可能或有什么解决方法?我想继续从不同的远程分支向我当前的分支添加代码。

【问题讨论】:

  • 如果我错了,谁能纠正我而不是投反对票?
  • 是的,这是可能的。一个存储库可以定义多个远程,您可以向/从其中任何一个推送、获取、拉取等。 git help remote 应该为您指明添加其他远程存储库的正确方向...

标签: git git-pull


【解决方案1】:

你也可以这样做

git pull <git_pull_url> <branch> --allow-unrelated-histories

【讨论】:

  • 兄弟,你的答案刚刚救了我的命,谢谢你在寻找这个答案并在这里找到它
【解决方案2】:

你可以

git pull url 分支

有效

【讨论】:

    【解决方案3】:

    从您想要将新代码合并到的原始存储库中执行此操作:

    对我来说,我只是先创建了一个同名的新分支:

    git checkout -b my_new_branch
    

    然后我添加了另一个来源:

    git remote add new_origin http://someRepo.git
    

    然后我只是将分支从 new_origin 拉到我当前的仓库中:

    git pull new_origin my_new_branch 
    

    git pull 命令应该为您执行提取和合并。

    【讨论】:

      【解决方案4】:

      您可以使用

      为您的存储库添加其他来源
      git remote add new_origin git@theUrlToRepo
      

      您现在可以开始推/拉,基本上可以在两个遥控器上进行所有操作。

      git push origin master
      git push new_origin master
      
      git pull origin master
      git pull new_origin master
      

      您只需要指定您正在使用哪个遥控器进行操作即可。

      在您的特定用例中,在添加远程存储库并命名它们之后,您将执行以下操作以将远程分支合并到本地工作区。

      git merge origin/loader
      git merge new_origin/login
      

      【讨论】:

      • git merge origin/loader,你正在合并远程loader与本地master/当前分支,对吧?
      • 是的,它就是这样做的