Как обновить раздвоенный репозиторий GitHub с изменениями из удаленного обратного репозитория
Инструкции от GitHub Help:
Настройка удаленной вилки
Синхронизация вилки
Инструкция по настройке / эксплуатации:
Откройте Git Bash (Windows) или Linux / Mac Terminal
Если вы еще не клонировали свой репозиторий, вы должны перейти в рабочий каталог вашей папки разработки и клонировать его на свою рабочую станцию.
$ git clone https://github.com/YOUR_USERNAME/YOUR_FORK.git
Перейдите в рабочий каталог вашего разветвленного репо на вашей рабочей станции.
$ cd /user/development/my_forked_repo/
Перечислите текущий настроенный удаленный репозиторий для вашего форка.
$ git remote -v
origin https://github.com/YOUR_USERNAME/YOUR_FORK.git (fetch)
origin https://github.com/YOUR_USERNAME/YOUR_FORK.git (push)
Укажите новый удаленный обратный репозиторий, который будет синхронизироваться с форком.
$ git remote add upstream https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git
Проверьте новый вышестоящий репозиторий, который вы указали для своего форка.
$ git remote -v
origin https://github.com/YOUR_USERNAME/YOUR_FORK.git (fetch)
origin https://github.com/YOUR_USERNAME/YOUR_FORK.git (push)
upstream https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (fetch)
upstream https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (push)
Получите ветки и их соответствующие коммиты из верхнего хранилища. Commits to master будет храниться в локальной ветке upstream / master.
$ git fetch upstream
remote: Counting objects: 75, done.
remote: Compressing objects: 100% (53/53), done.
remote: Total 62 (delta 27), reused 44 (delta 9)
Unpacking objects: 100% (62/62), done.
From https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY
* [new branch] master -> upstream/master
Проверьте локальную ветвь вашего форка.
$ git checkout master
Switched to branch 'master'
Объедините изменения из upstream / master в вашу локальную ветку master. Это синхронизирует главную ветвь вашей ветки с вышестоящим репозиторием, не теряя локальные изменения.
$ git merge upstream/master
Updating a422352..5fdff0f
Fast-forward
README | 9 -------
README.md | 7 ++++++
2 files changed, 7 insertions(+), 9 deletions(-)
delete mode 100644 README
create mode 100644 README.md
Если в вашем локальном филиале не было уникальных коммитов, вместо этого Git выполнит «ускоренную перемотку вперед»:
$ git merge upstream/master
Updating 34e91da..16c56ad
Fast-forward
README.md | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
Теперь вам нужно будет выдвинуть коммиты на свою вилку.
$ git push
Если вы еще не авторизованы, вам будет предложено ввести имя пользователя / пароль для github. После аутентификации новые коммиты должны быть перенесены на вашу вилку и видны на github.