Объединение не объединенной ветки функций в другую ветвь функции с Git

В моей компании есть рабочий процесс Git, который выглядит примерно так:

  • Создайте ветвь функции из нетронутой ветки (мы используем базовую ветвь, называемую "develop", но вы можете думать об этом как о "хозяине" )
  • Сделайте работу, которая вам понадобится в этой ветки этой функции, и скопируйте свои изменения.
  • Иногда, пересобирайте ветвь с веткой разработки
  • Когда работа в вашей ветке свойств завершена, зафиксируйте и нажмите на ветвь удаленной функции на GitHub
  • Создайте запрос на перенос, чтобы объединить ветвь вашей функции в ветку разработки, которая получает код, проверенный другим разработчиком.
  • Как только проверка кода будет завершена, ветвь функции будет объединена в ветку разработки, а ветвь функции будет удалена.

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

В нашем случае мы в настоящее время создаем наши ветки функций из ветки разработки, поэтому работа, которую я только что завершила, пока недоступна (она все еще находится в подвешенном состоянии, ожидая объединения в ветку разработки другим разработчиком). Вопрос, который у меня есть, заключается в том, что, если работа, которую я делаю в моей новой ветки функции, зависит от работы, которую я только что завершил в своей предыдущей ветки функции? Должен ли я изначально разветвлять свою новую ветку функций из моей ветки с не связанными функциями, а не с веткой разработки? Если я уже создал свою новую ветвь функции из ветки разработки, получает изменения, которые я пропускаю из немаркированной ветки так же просто, как делать git merge [unmerged-branch] в моей новой ветке?

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

Ответ 1

У меня есть вопрос, что делать, если работа, которую я делаю в своей новой функции ветвь зависит от работы, которую я только что завершил в своей предыдущей функции филиал? Должен ли я изначально разветвлять мою новую ветку функций из моего как все-таки несвязанная ветвь признака, а не ветка разработки?

Как вы его описываете, да, вы бы это сделали. Тем не менее, я был бы обеспокоен потенциальным срывом по пути отработки "неутвержденной/не рассматриваемой" работы, как если бы ваш обзор кода привел к значительным изменениям, вы можете переделать много работы.

Если я уже создал свою новую ветку функций из ветки разработки, получает изменения, которые я пропускаю из несвязанной ветки, как простой как сделать git слияние [unmerged-branch] в моей новой ветке?

Угу. Должно быть.:)