有git pull并推送到基于分支的不同默认遥控器

时间:2015-03-05 21:15:05

标签: git github git-branch git-push git-remote

我试图弄清楚如何设置git我可以从/向一个遥控器拉/推,它默认将它拉/推到它自己的本地分支。

这个遥控器不会成为原点遥控器,我喜欢偶尔将分支合并到主分支,它将被推/拉到原点。

但重要的是要注意其他遥控器将完全独立并拥有自己的主机和此类分支机构。所以它可能看起来像这样

remote-a(master) - >本地(远程分支)

任何帮助将非常感谢,提前感谢

2 个答案:

答案 0 :(得分:1)

  1. 您可以拥有任意数量的遥控器。请注意所有遥控器都是相同的 - origin在任何意义上都不是特殊遥控器。克隆新的回购后,它只是第一个默认远程。您可以使用git remote命令(reference
  2. 管理它们

    git remote add remote123 <REMOTE_URL>

    1. 您可以拥有任意数量的分支。您可以设置本地分支以跟踪单个远程分支。 git checkout可以帮助您完成此操作。 (reference)。 git branch也可以使用--set-upstream-to密钥(reference
    2. 执行此操作

      示例:

      # create branch, checkout to newly created branch and setup tracking
      git checkout -b remote123_master remote123/master
      

      这将设置本地分支remote123_master以跟踪来自远程{{​​1}}的{​​{1}}分支。

      因此,据我了解您的需求,您将拥有此工作流程:

      master

      <强>更新

      如果您不打算提交其他遥控器,则可以跳过为remote123创建本地分支的步骤。然后它看起来像:

      git checkout master // switch to default master (tracked from origin/master)
      git pull // if needed from origin
      git push // if needed to origin
      // do the job, commit
      git checkout remote123_master // switch to master from other remote
      git pull // if needed from remote123
      git push // if needed to remote123
      // do the job, commit
      git checkout master // go back to master
      git merge remote123_master // merge master from remote123 to master
      git push // if needed to origin
      

答案 1 :(得分:0)

使用此

git remote add remote_name https://github.com/...
git checkout -b tracks_remote_name
git config brangh.tracks_remote_name.remote remote_name
相关问题