Вытащить обновления из оригинального репо - PullRequest
0 голосов
/ 20 марта 2012

Мы попросили учащихся нашего класса использовать github для сохранения всего кода проекта курса. Каждый студент создал свой репо. (Думаю, я должен был создать репо и команды, и это была моя ошибка). Затем я раздвоил каждое из этих репо в рамках своей организации.

Я думал, что смогу просто вытащить изменения, как и когда студенты обновят свое первоначальное репо. Я думаю, что мое понимание того, как работает тяга, неверно.

На следующем изображении я вижу, что ученик обновил свое репо новыми документами, но есть ли какой-нибудь способ, которым я могу просто обновить репо, который я раздал?

enter image description here

1 Ответ

9 голосов
/ 20 марта 2012

Предполагая, что у вас есть центральный репозиторий, вам нужно обновить свой разветвленный репозиторий, просто добавить исходный репозиторий в качестве удаленного и затем использовать стандартный git pull . Затем вы можете отправить эти изменения в свое раздвоенное репо.

Существует два варианта простого обновления вашего форка:

Вариант 1

Слияние репо с вышестоящим репо в ваше собственное ...

# Add the remote, call it "upstream":

git remote add upstream git://github.com/whoever/whatever.git

# Make sure that you're on your master branch:

git checkout master

# Merge the upstream master branch to your master branch

git pull upstream master

# Now push your changes to your forked repository on github

git push origin master

Вариант 2:

Кроме того, вы можете использовать rebase для обновления вашего форка ...

# Add the remote, call it "upstream":

git remote add upstream git://github.com/whoever/whatever.git

# Fetch all the branches of that remote into remote-tracking branches,
# such as upstream/master:

git fetch upstream

# Make sure that you're on your master branch:

git checkout master

# Rewrite your master branch so that any commits of yours that
# aren't already in upstream/master are replayed on top of that
# other branch:

git rebase upstream/master

# Now push your changes to your forked repo on github...

git push origin master

Github имеет подробную документацию по работе с разветвленными хранилищами: Github: Fork a Repo

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...