【问题标题】:Merging two remote repositories in Git在 Git 中合并两个远程存储库
【发布时间】:2009-11-20 02:40:56
【问题描述】:

我想在 Git 中合并两个远程存储库。

一个是主流仓库,我没有写权限。我想跟踪它的 master 分支。

另一个由我们维护,我拥有它的全部权利。

我想跟踪主流代码。同时,我们的修改会记录在我的远程仓库中。

我该怎么做?

【问题讨论】:

    标签: git git-merge


    【解决方案1】:

    我会推荐:

    • 克隆yourRemoteRepo(这样,您可以轻松地从该存储库中拉/推)
    • mainstreamRepo 添加为远程并获取其分支,然后跟踪您感兴趣的分支

      git clone git://yourRemoteRepo
      git remote add mainStreamRepo http://mainStreamRepo
      git fetch mainStreamRepo
      git checkout -b mainStreamMaster mainStreamRepo/master
      git checkout master
      

    从那里,你可以

    • 合并mainStreamMaster到你的master
    • 或在mainStreamMaster 之上重新设置master(以便将mainStreamMaster 的完整历史记录整合到master 分支中)
    • 然后对master(或特定主题的分支)进行一些改进,您可以将其推送到yourRemoteRepo

    【讨论】:

    • @TravisCunningham (stackoverflow.com/users/2487332/travis-cunningham) 感谢您的编辑 (incorrectly rejected):我添加了我最初忘记的遥控器的名称。
    • 这是否可能没有克隆但只能获取然后合并远程引用?还是合并总是需要一个签出的工作目录?
    • @hakre 是的,合并涉及一个工作树,其中一个分支被签出。所以也涉及到一个克隆。
    • 感谢您的快速回复。对于快进“合并”(更好:重置),这可能有效,但如果可能,我应该先验证。再次感谢。
    猜你喜欢
    • 2012-01-27
    • 2015-03-25
    • 1970-01-01
    • 2017-04-29
    • 2010-11-28
    相关资源
    最近更新 更多