Подтвердить что ты не робот

Работа в ожидании ожидающего рассмотрения PR

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

*master
user_story_1

user_story_1 имеет открытый запрос на растяжение.

Теперь я пытаюсь создать новую ветку user_story_2, где я могу продолжить работу, которую я оставил в user_story_1. Как это сделать в Git, не вступая в конфликт или не влияя на мое ожидающее слияние?

4b9b3361

Ответ 1

Я предполагаю, что вы хотите начать новую ветку user_story_2 поверх работы, выполненной в user_story_1. Здесь рабочий процесс, который я использую в таком сценарии:

  • Открыть запрос Pull для user_story_1:

      * (user_story_1)
      *
     /
    * (master)
    *
    *
    
  • Создайте новую ветвь user_story_2 на основе user_story_1:

    $ git checkout -b user_story_2 user_story_1
      * (user_story_1, user_story_2)
      *
     /
    * (master)
    *
    *
    
  • Работа над новой веткой:

      * (user_story_2)
      *      
      * (user_story_1)
      *
     /
    * (master)
    *
    *
    
  • Запрос Pull объединяется:

      * (user_story_2)
      *      
    * | (master)
    |\|
    | * (user_story_1)
    | *
    |/
    *
    *
    *
    
  • Удалить старую ветку:

      * (user_story_2)
      *      
    * | (master)
    |\|
    | *
    | *
    |/
    *
    *
    *
    
  • Восстановите новую ветку на master:

      * (user_story_2)
      *      
     /
    * (master)
    |\
    | *
    | *
    |/
    *
    *
    *
    

Ответ 2

Создайте новую ветку из мастера для каждой из ваших историй/функций.

Прежде чем слить каждую ветку назад, либо объедините мастер в эту ветвь, либо переставьте ветку на мастер. Последнее имеет мои предпочтения, но в итоге результат тот же.

У вас появятся конфликты, нет никакого способа обойти это. Однако вы хотите разрешить конфликты в своем филиале; не в мастер. Таким образом, вы можете протестировать свою ветку после разрешения конфликтов, прежде чем слить их в мастер.