Как вы обновляете вилку ретрансляции GitHub в веб-интерфейсе?
У меня есть репозиторий Github, который я разыграл из какого-то другого проекта несколько месяцев назад. Сейчас уже несколько месяцев, и первоначальное основное репо изменилось. Я хотел бы обновить свое репо, чтобы отразить эти изменения. Возможно ли это в веб-интерфейсе Github? Или мне просто нужно удалить репо и перепрограммировать его?
3 ответа
Вы можете попробовать и отменить так, как происходят запросы на загрузку.
- Перейдите к своей вилке
-
Выдать запрос на выборку
По умолчанию это будет ваша вилка справа ( head repo ) с просьбой нажать свои коммиты и изменения в исходное репо ( базовое репо ) слева.
-
Нажмите раскрывающееся меню для базового репо и главного репо и выберите репозитории друг друга.
Вы хотите, чтобы ваши данные были перечислены слева (принятие изменений), в то время как исходный репозиторий находится справа (тот, у кого есть изменения для нажатия). Как показано на этом изображении:
-
Отправить запрос на вытягивание
Если у вашей вилки не было никаких изменений, вы должны иметь возможность автоматически принимать слияние.
Если ваш код каким-то образом конфликтует или недостаточно чист, это не будет работать для обновления через веб-интерфейс GitHub, и вам понадобится захватить код и разрешить любые конфликты на вашем компьютере, прежде чем переходить к вашей вилке.
Это будет легче.
- Перейдите в Forked Repo (ваш) и нажмите кнопку «Новый запрос на перенос».
- На открывшейся странице есть небольшая ссылка на «база коммутации» в сообщении под dropdownselects. Нажмите на ссылку.
- Теперь он автоматически приведет к вашему первоначальному репо. Нажмите кнопку Создать Pull Request и напишите сообщение о фиксации.
- Теперь он автоматически приведет к вашему разветвленному репо, нажмите Объединить запрос на растяжение и Подтвердить слияние .
Как обновить разветвленное репо GitHub с изменениями из удаленного репозитория вверх
Инструкции из справки GitHub:
Инструкции по установке /эксплуатации:
Открыть 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 (выборка)
origin https://github.com/YOUR_USERNAME/YOUR_FORK.git (push)
Укажите новый удаленный восходящий репозиторий, который будет синхронизироваться с вилкой.
$ git remote add upstream https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git
Проверьте новый репозиторий upstream, который вы указали для своей вилки.
$ git remote -v
origin https://github.com/YOUR_USERNAME/YOUR_FORK.git (выборка)
origin https://github.com/YOUR_USERNAME/YOUR_FORK.git (push)
upstream https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (выборка)
upstream https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (push)
Получить ветви и их соответствующие коммиты из восходящего репозитория. Commits to master будет храниться в локальной ветке, вверх /вниз.
$ git fetch вверх по течению
remote: подсчет объектов: 75, сделано.
remote: Сжатие объектов: 100% (53/53), сделано.
удаленный: Всего 62 (дельта 27), повторно использовано 44 (дельта 9)
Распаковка объектов: 100% (62/62), сделано.
Из https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY
* [новая ветка] мастер -> вверх по течению /мастер
Проверьте локальную ветвь хозяина вашего вилка.
$ git checkout master
Переключен на ветку 'master'
Объединить изменения с восходящего /ведущего в локальную ветвь мастера. Это приведет к синхронизации ведущей ветви вашего вилка с восходящим репозиторием, не теряя локальных изменений.
$ git merge upstream /master
Обновление a422352..5fdff0f
Перемотка вперед
README | 9 -------
README.md | 7 ++++++
2 файла изменены, 7 вставок (+), 9 удалений (-)
режим удаления 100644 README
создать режим 100644 README.md
Если ваш локальный филиал не имеет каких-либо уникальных коммитов, Git вместо этого выполняет «перемотку вперед»:
$ git merge upstream /master
Обновление 34e91da..16c56ad
Перемотка вперед
README.md | 5 +++ -
1 файл изменен, 3 вставки (+), 2 удаления (-)
Теперь вам нужно нажать фиксации на свою вилку.
$ git push
Если вы еще не прошли проверку подлинности, вам будет предложено ввести имя пользователя /пароль github. После аутентификации новые коммиты должны быть перенесены на вашу вилку и видны на github.