2009-05-15 3 views
107

Я уже давно разветвил репозиторий на github, сделал небольшое изменение и перевел его обратно в свою вилку github. С тех пор исходный репозиторий изменился. Я хотел бы объединить изменения из исходного репозитория в свою вилку.Слияние изменений из удаленного репозитория github в локальный репозиторий

Я новичок в git и github, и мне нужны конкретные команды, как это сделать.

+0

Смотрите также http://stackoverflow.com/questions/1123344/merging-between-forks-in- github – Ether

ответ

147
git remote add {name} {Public Clone URL} 
git pull {name} master 
git push 

Пример:

git remote add bret git://github.com/bret/watir.git 
git pull bret master 
git push 
+7

wow, что было просто :) love git –

9

Просто добавьте оригинальный репо в качестве пульта дистанционного управления и слейте его вилкой; затем нажмите объединенную вилку на github.

Существует также ruby gem for easier github operations. Вы можете объединить перед одним вызовом ...

+1

Я вижу, что я забыл добавить, что я новичок в git и github, и что мне нужны конкретные команды, как это сделать. Спасибо за github-gem, но это слишком много для меня. –

+5

здесь люди должны использовать команды/образцы кода. слова не помогают в stackoverflow. – holms

+1

Yup, я узнал, что с мая 2009;) –

7
git pull origin master 

сделает работу создания дополнительной фиксации слияния. Если у вас нет конфликтов и вы не хотите создавать повторное присоединение (с дополнительным «слиянием») для каждой фиксации, которую вы нажимаете, более предпочтительным является rebase. Вы можете сделать это с Git Gui + gitk. Просто введите удаленный с Git Gui, а затем открыть историю с gitk и создать временный r_master филиал на remotes/origin/master извлечен. Наконец, позвоните git rebase r_master в git bash. Это поместит ваши коммиты поверх удаленных изменений. Вы готовы нажать и снять r_master.

Этот comment предполагает, что для этого потока есть ярлыки.

Смежные вопросы