数据科学项目的分支

时间:2018-08-29 12:05:32

标签: git data-science

我有一个Git存储库,我正在其中开发一个数据科学项目,偶尔会有其他人的贡献。 它涉及

  • 我正在开发的程序包
  • 实验-使用该程序包说一些关于外部保存的数据的脚本

到目前为止,我一直在使用两个分支:

  • development-在该分支上准备了该软件包的新版本(例如,需要更改API或需要新功能)
  • master-这始终保留该软件包的最新有效版本,以便每个人都可以克隆/下载该软件包并开始自己的实验

新的实验只针对master,现在我觉得有点奇怪。还有更好的选择吗?我应该创建分支experiments吗?

1 个答案:

答案 0 :(得分:1)

我认为您要的是工作流程和分支机构管理策略。

Git工作流一角钱,很大程度上取决于个人喜好和团队规模。我一直发现Atlassian编写的工作流比较对于企业项目非常有用(可在https://www.atlassian.com/git/tutorials/comparing-workflows获得)。我个人更喜欢将其中描述的Gitflow模型用于中型项目。

如果您的团队很小,并且对细节非常关注,则可以考虑基于主干的开发(https://paulhammant.com/2013/04/05/what-is-trunk-based-development/)。或者您可能根本就没有分支策略。

在您的情况下,如果您完全围绕“实验”具有任何质量控制机制,则您可能希望将其排除在开发/掌握之外,直到对其进行验证为止,这可以保证通过CI运行测试的分支策略批准拉取请求之前。