Как изменить запрос GitHub pull?

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

Как я могу это сделать? Должен ли я сохранить хэш фиксации без изменений, как я могу это сделать?

4 ответов


просто нажми еще коммиты в ветку запрос для. Запрос pull поднимет это тогда

пример:

Если вы хотите, чтобы B слился в master

  1. вы нажимаете c1, c2, c3 на b
  2. затем вы делаете новый запрос на b
  3. он получает обзор, и вам нужно больше коммитов
  4. вы нажимаете c11, c21, c31 на b
  5. запрос pull теперь показывает все 6 шесть коммитов

у меня была только одна фиксация в запросе pull, и я использовал git commit --amend обновить его. Затем я сделал толчок силой с git push -f таким образом, мой исправленный commit заменил оригинальный. Запрос pull автоматически подхватил новую фиксацию. (На самом деле он показал оба коммита, но когда я перезагрузил страницу, старый коммит исчез.)

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


Если вы продолжаете вносить изменения и продолжаете нажимать на ту же ветку, уточненные коммиты будут добавлены к тому же запросу pull (если ваш запрос pull не был объединен). Это может сделать историю очень запутанной.

альтернативное решение и метод, который я использую следующим образом:

  1. создайте новую ветвь(исправления) из репозитория (вверх по течению) и ветви (разработка), в которую вы собираетесь отправить запрос pull, выполнив:

    git исправления ветвей вверх по течению / develop

  2. добавьте свои уточненные коммиты непосредственно в эту вновь созданную ветку.

    git commit-m "ваше сообщение"

  3. Нажмите эту ветку на свой собственный разветвленный пульт (может быть назван origin).

  4. сравните и отправьте новый запрос на вытягивание с чистой историей фиксации.
  5. кроме того, это хорошая идея, чтобы удалить ветку после запрос был объединен.
  6. и вы может комментировать и закрывать ваши предыдущие запросы pull.

вы также можете использовать по API на GitHub.

пример curl

curl --user "your_github_username" \
     --request PATCH \
     --data '{"title":"newtitle","body":"newbody",...}' \
     https://api.github.com/repos/:owner/:repo/pulls/:number

вы можете найти подробный список данных в GitHub разработчик doc

пример: изменить имя мой pull-запрос

curl --user "jeremyclement" \
     --request PATCH \
     --data '{"title":"allows the control of files and folders permissions."}' \
     https://api.github.com/repos/Gregwar/Cache/pulls/9