我们的团队有三个后端开发人员和两个前端开发人员。我们使用
问题是关于我们的分支策略:我们使用 Vincent Driessen 的 分支模型。每个人为每个问题创建一个
足够的背景故事了吧?那好吧,问题在这里:假设我们的冲刺中有 50 个问题(每个人有 10 个),并且在冲刺结束时,客户只想发布其中的 35 个问题(不需要问为什么,这是客户的要求)。因此,我们需要以某种方式排除 15 个问题。大多数是前端问题。由于我们的设置原因,在此时一刻,所有内容都在
还有一个重要的全局限制:我们需要在
这个问题是:当有一些改进和停顿时,我们如何持续使用Git?如果需要更多细节,请随时问我。
Git
作为版本控制系统,Jira
用于问题和项目跟踪,Stash
作为 Git 存储库。最后,我们使用 SourceTree
(带有 git-flow
)作为 Git 客户端。问题是关于我们的分支策略:我们使用 Vincent Driessen 的 分支模型。每个人为每个问题创建一个
feature 分支
,并在完成后将其合并回 develop
(通过拉取请求并在 Stash 上审核后)。除此之外,我们为已完成但尚未发布的问题创建 bugfix 分支
,为已发布的问题创建 hotfix 分支
,并为已完成冲刺创建 release 分支
。在这种情况下,没有人直接操作 develop
和/或 master
。我们的前端团队使用 Sass
作为 CSS 预处理器。最后,我们有 TeamCity
来构建更改,并查找 master
分支上的更改。足够的背景故事了吧?那好吧,问题在这里:假设我们的冲刺中有 50 个问题(每个人有 10 个),并且在冲刺结束时,客户只想发布其中的 35 个问题(不需要问为什么,这是客户的要求)。因此,我们需要以某种方式排除 15 个问题。大多数是前端问题。由于我们的设置原因,在此时一刻,所有内容都在
develop
分支上。现在我们有几个选择:
- 从
develop
创建一个release
分支并还原这 15 个问题(我们需要更新 TeamCity 或之后将此分支合并回master
)。 - 将所有内容放到
master
上并在那里还原(在这种情况下,无需触及 TeamCity)。 - 将所需的问题挑选到
master
上(这可能会导致很多冲突)。
还有一个重要的全局限制:我们需要在
develop
上进行测试(因此,每个已完成的问题都需要在 develop
上进行测试,这不能改变),而我们将发布在 master
上(有一种方式可以在 TeamCity 中更改,但没有人想要更改)。这个问题是:当有一些改进和停顿时,我们如何持续使用Git?如果需要更多细节,请随时问我。
develop
分支上的更改。否则会很混乱。 - Gökay Gürcan