Филиалы для проекта науки о данных - PullRequest
0 голосов
/ 29 августа 2018

У меня есть Git-репозиторий, в котором я разрабатываю проект по науке о данных, время от времени внося вклад от других. Это включает

  • пакет, который я разрабатываю
  • эксперименты - сценарии, которые используют пакет, чтобы сказать что-то о данных, хранящихся извне

До сих пор я использовал две ветви:

  • development - для этой ветки были подготовлены новые версии пакета (например, необходимо изменить API или потребовались новые функции)
  • master - при этом всегда сохраняется текущая рабочая версия пакета, так что каждый может клонировать / загрузить пакет и начать собственный эксперимент

Новые эксперименты были проведены только на master, что сейчас я нахожу немного странным. Есть ли лучшая альтернатива? Должен ли я создать ветку experiments?

1 Ответ

0 голосов
/ 29 августа 2018

Я думаю, что вы просите, это рабочий процесс и стратегия управления филиалами.

Рабочие процессы Git стоят десятки и зависят в основном от личных предпочтений и размера команды. Я всегда находил сравнение рабочих процессов, созданное Atlassian, весьма полезным для корпоративных проектов (доступно по адресу https://www.atlassian.com/git/tutorials/comparing-workflows).. Я лично предпочитаю использовать модель Gitflow, описанную в нем, для проектов среднего размера.

Если у вас небольшая команда и хорошее внимание к деталям, вы можете просто подумать о разработке на основе соединительных линий (https://paulhammant.com/2013/04/05/what-is-trunk-based-development/). Или у вас может вообще не быть стратегии ветвления.

В вашем случае, если у вас есть какой-либо механизм контроля качества вокруг «экспериментов», вы, вероятно, хотите не допускать их разработки / освоения до тех пор, пока они не будут проверены, что может потребовать стратегии ветвления с тестами, которые выполняются через CI до утверждения запросов на выдачу.

...