Когда я открываю запрос на перенос на GitHub .
Все коммиты с момента моего последнего запроса и все новые автоматически добавляются к этому запросу .
Я не могу контролировать, какие коммиты добавляются, а какие нет.
Когда я пытаюсь открыть другой запрос на перенос, я получаю сообщение об ошибке «Ой! Уже есть запрос на перенос».
Есть ли простой способ открыть несколько запросов на вытягивание без необходимости возиться с командной строкой?
git
github
pull-request
Torourke
источник
источник
Самый простой способ сделать это - использовать команду hub ( https://github.com/defunkt/hub ).
Из своей тематической ветки (в данном примере «функция»), для которой вы хотите создать запрос на перенос, вы можете просто запустить:
(не забудьте сначала нажать ветку!)
И он откроет новый запрос на перенос на GitHub для «YOUR_USER: feature».
Если вы уже создали проблему на GitHub, вы даже можете прикрепить запрос на перенос к этой существующей проблеме (чего нельзя сделать из веб-интерфейса):
источник
Вы можете создать Pull Request (PR), создав отдельные ветки для своей работы.
Пример:
Вы оформляете заказ от мастера филиала в филиал work-1.
Вы делаете некоторые коммиты в ветке work-1 как work-1-commit-1 и work-1-commit-2.
Теперь вы создаете PR от работы-1 до мастера. Ваш код можно просмотреть, просмотрев файлы, измененные из PR.
Теперь для дальнейшей работы вы перейдете из ветки work-1 в новую ветку work-2.
Вы делаете некоторые коммиты в ветке work-2 как work-2-commit-1 и work-2-commit-2.
Теперь вы создаете PR от работы-2 до работы-1. Ваш код можно просмотреть, просмотрев файлы, измененные из PR.
Здесь изменения файлов будут иметь только новый код, который вы напишете после work-1-commit-2.
источник
На самом деле вы МОЖЕТЕ сделать это, не создавая другую ветку, но для этого нужно немного поиграться.
Вот шаги:
(другой / мастер) A -> B -> C -> D -> E (ваш / мастер)
Допустим, вы хотите вытащить B и C в одном запросе, а D & E в другом.
На мой взгляд, запрос на перенос рассматривает фиксацию C как точку ветвления. Или что-то.
источник
Когда вы изначально переходите к созданию запроса на перенос, если вы откроете две отдельные формы для нового запроса на перенос, это позволит вам создать их, если они будут указывать на разные ветви, которые необходимо объединить. Например, я мог бы сделать два отдельных запроса: один для слияния в мастер, а другой для слияния с тестом.
источник
Я новичок в Git и GitHub, и у меня был тот же вопрос, что и у OP.
Я нашел решение, которое, вероятно, не было доступно во время OP.
Ситуация: у вас есть 3 изменения, и вы хотите, чтобы каждое было построено на основе предыдущего, и у каждого был свой запрос на вытягивание (PR).
Проблема: когда вы создаете первый PR, который пытается превратить развитие в master, все выглядит нормально, но затем после того, как вы внесете изменения для второго PR и объедините их (используя ту же ветку), все изменения находятся в одном PR. .
Мини-решение: создать новую ветку
Теперь вы отправляете код на GitHub и создаете PR, но по умолчанию используется Pull from mini_change_2 to master, за исключением того, что master еще не имеет изменений из первого PR, поэтому он включает все изменения из PR1 и PR2.
Лучшее решение: укажите, с какой веткой вы объединяетесь в PR2.
Не просто принимайте значения по умолчанию при создании второго PR, скажем, вы собираетесь потянуть mini_chnage_2 для разработки, это покажет только изменения в mini_change_2
Теперь создайте новую ветку mini_change_3 и PR к mini_change_3.
Проблема возникает, когда вы начинаете их объединять ... но это уже другое упражнение.
источник