2009-11-20 5 views
24

Я хочу объединить два удаленных репозитория в Git.Слияние двух удаленных репозиториев в Git

Один основной репозиторий, у которого у меня нет разрешения на запись. Я хочу отслеживать его главную ветку.

Другое поддерживается нами, у меня есть полные права на это.

Я хочу отслеживать основной код. В то же время наша модификация будет записана в моем удаленном репозитории.

Как это сделать?

ответ

35

Я бы рекомендовал:

  • клонирование 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,
  • или перебазировать свой master поверх mainStreamMaster (для того, чтобы интегрировать всю историю mainStreamMaster в свой master филиал)
  • затем сделать несколько эволюций в master (или к тема), которые вы можете нажать на yourRemoteRepo.
+0

@TravisCunningham (http://stackoverflow.com/users/2487332/travis-cunningham) благодарит вас за редактирование ([неправильно отклонено] (http://stackoverflow.com/review/spected-edits/2317758)): Я добавил имя пульта, изначально забытого. – VonC