开发人员vs发布分支gitflow

开发人员vs发布分支gitflow,git,git-flow,git-stash,Git,Git Flow,Git Stash,我是gitflow的新手,所以有几个问题 我们真的需要开发者分支吗?它有什么用途 我们很可能会有一个master分支,在那里所有东西都会合并到生产级别。然后,对于每个版本,我们都有发布分支,这些分支被部署到生产中进行发布。功能分支是开发人员编写代码,然后通过请求合并到相关发布分支的地方 我错过了什么 我错过了什么 坦率地说……一切 您选择使用Git Flow来避免不确定是否已进入生产环境的提交混乱,准确跟踪哪些提交在哪里,并减少每个人在一次将所有内容集成到一个分支中时遇到的大量冲突和遗漏的假设所

我是gitflow的新手,所以有几个问题

我们真的需要开发者分支吗?它有什么用途

我们很可能会有一个
master
分支,在那里所有东西都会合并到生产级别。然后,对于每个版本,我们都有发布分支,这些分支被部署到生产中进行发布。功能分支是开发人员编写代码,然后通过请求合并到相关发布分支的地方

我错过了什么

我错过了什么

坦率地说……一切

您选择使用Git Flow来避免不确定是否已进入生产环境的提交混乱,准确跟踪哪些提交在哪里,并减少每个人在一次将所有内容集成到一个分支中时遇到的大量冲突和遗漏的假设所带来的头痛

让我们从顶部开始:

我们真的需要开发者分支吗?它有什么用途

在Git Flow本体中,本体有两个分支:

  • 主人
  • 发展
在此场景中,
master
包含被视为生产就绪的代码。如果你必须这样做,你可以在任何时候部署大师提示,你会没事的<代码>开发,或
开发人员
,是实际开发发生的地方;有些东西需要在这里集成并一起测试,所以这就是发生的地方。你想在这里这样做是为了让自己远离可能出现的任何bug

我们很可能会有一个主分支,所有的东西都会合并到生产级别。然后,对于每个版本,我们都有发布分支,这些分支被部署到生产中进行发布

这意味着
master
分支只起一个作用:它是一个集成点。您不能再声称
master
是生产就绪代码


也就是说,Git流并不适合所有人。在这种情况下,您的
master
分支可能有很多非常好的回归测试,这些测试允许您直接提交给它,并且您可以在灾难性的发布时回滚


但是,如果您想使用Git Flow,您必须接受这样的概念,即工作在合并到master之前在单独的集成分支上进行测试。

这可能对程序员堆栈交换更好,因为我不确定它是否用于StackOverflow。实际上,在从发布分支进行发布之后,它会合并到master。