Как вы обновляете вилку ретрансляции GitHub в веб-интерфейсе?

У меня есть репозиторий Github, который я разыграл из какого-то другого проекта несколько месяцев назад. Сейчас уже несколько месяцев, и первоначальное основное репо изменилось. Я хотел бы обновить свое репо, чтобы отразить эти изменения. Возможно ли это в веб-интерфейсе Github? Или мне просто нужно удалить репо и перепрограммировать его?

54 голоса | спросил Jake Wilson 16 J000000Monday12 2012, 22:01:52

3 ответа


42

Вы можете попробовать и отменить так, как происходят запросы на загрузку.

  1. Перейдите к своей вилке
  2. Выдать запрос на выборку

    По умолчанию это будет ваша вилка справа ( head repo ) с просьбой нажать свои коммиты и изменения в исходное репо ( базовое репо ) слева.

  3. Нажмите раскрывающееся меню для базового репо и главного репо и выберите репозитории друг друга.

    Вы хотите, чтобы ваши данные были перечислены слева (принятие изменений), в то время как исходный репозиторий находится справа (тот, у кого есть изменения для нажатия). Как показано на этом изображении:

      

    fork done over self

  4. Отправить запрос на вытягивание

    Если у вашей вилки не было никаких изменений, вы должны иметь возможность автоматически принимать слияние.

Если ваш код каким-то образом конфликтует или недостаточно чист, это не будет работать для обновления через веб-интерфейс GitHub, и вам понадобится захватить код и разрешить любые конфликты на вашем компьютере, прежде чем переходить к вашей вилке.

ответил Eight Days of Malaise 12 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowWed, 12 Sep 2012 02:18:40 +0400 2012, 02:18:40
20

Это будет легче.

  1. Перейдите в Forked Repo (ваш) и нажмите кнопку «Новый запрос на перенос».
  2. На открывшейся странице есть небольшая ссылка на «база коммутации» в сообщении под dropdownselects. Нажмите на ссылку.
  3. Теперь он автоматически приведет к вашему первоначальному репо. Нажмите кнопку Создать Pull Request и напишите сообщение о фиксации.
  4. Теперь он автоматически приведет к вашему разветвленному репо, нажмите Объединить запрос на растяжение и Подтвердить слияние .
ответил Youngjae 12 MaramWed, 12 Mar 2014 09:26:42 +04002014-03-12T09:26:42+04:0009 2014, 09:26:42
2

Как обновить разветвленное репо 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.

ответил ode2k 11 MaramFri, 11 Mar 2016 05:48:52 +03002016-03-11T05:48:52+03:0005 2016, 05:48:52

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132