git flow - как мне приостановить разработку одной функции, чтобы поработать над другой

Я новичок в git и git flow. Я прочитал все различные страницы, блоги и вопросы о stackoverflow по нему и использую его в своей повседневной разработке.

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

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

Например, я запускаю новую функцию.

$ git flow feature start yak-Speedup

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

Я бы хотел сделать что-то вроде этого:

$ git flow feature pause yak-Speedup
$ git flow feature start alpaca-Sheering
#write code
$ git flow feature finish alpaca-Sheering
$ git flow feature resume yak-Speedup

Действительно, наличие команды «git flow feature list» подразумевает, что у меня может одновременно работать несколько функций. Но я не понимаю, как создавать или переключаться между функциями. В самом деле, я начинаю думать, что это вообще не проблема с потоком git, а проблема с git.

Я ценю любую помощь. Спасибо!

47
задан John Green 20 December 2011 в 20:33
поделиться