Я бы пошел за чем-то вроде вашего второго выбора:
Если часть feature_1
готова (и под готовностью я особенно имею в виду, что она не нарушает приложение), я быобъединить его в разработке (следуя рабочему процессу «часто совершать, часто объединять»), чтобы любой, кто работает в разработке, имел к нему доступ.
Затем, после объединения feature_1
, я бы перебазировал егоповерх develop
(что по сути то же самое, что удаление ветви feature_1
и воссоздание ее поверх develop
) и работа над ней оттуда.
Что касается вашего выбора 1, я быНе рекомендуется, чтобы люди основывали свою работу поверх вашей функциональной ветви, так как вы можете изменить свою ветку, изменить порядок коммитов, изменить их и так далее.Я бы рассматривал чью-либо ветвь функций (выдвинутую или нет) как частную и потенциально нестабильную, и не трогал бы ее и не основывал на ней свою работу.