什么是Git在敏捷过程中的分支策略?

什么是Git在敏捷过程中的分支策略?,git,svn,branch,agile,git-branch,Git,Svn,Branch,Agile,Git Branch,我们有一个中央存储库和三个不同的环境,即开发、暂存和生产环境。我们遵循敏捷过程。每个sprint(10天的工作)将包含大量的用户故事(增强)和缺陷(bug)。我们正在使用GIT,并使用capistrano构建脚本部署主分支 我们不希望每个环境都有不同的存储库 主存储库始终是稳定版本,并指向生产环境 有时,客户不批准用户故事并将其保留,但他们希望看到登台而不是现场 我们希望为每个sprint保留版本,比如sprint1,sprint2用于版本控制 那么,在这些情况下,最好使用什么样的分支策略呢?使

我们有一个中央存储库和三个不同的环境,即开发、暂存和生产环境。我们遵循敏捷过程。每个sprint(10天的工作)将包含大量的用户故事(增强)和缺陷(bug)。我们正在使用GIT,并使用capistrano构建脚本部署主分支

  • 我们不希望每个环境都有不同的存储库
  • 主存储库始终是稳定版本,并指向生产环境
  • 有时,客户不批准用户故事并将其保留,但他们希望看到登台而不是现场
  • 我们希望为每个sprint保留版本,比如sprint1,sprint2用于版本控制

  • 那么,在这些情况下,最好使用什么样的分支策略呢?

    使用一个存储库和多个分支。在专题分支上发展每个故事。完成后,合并到开发分支。在每个sprint结束时,如果团队对开发分支上的所有完整用户故事都满意,则合并到一个staging分支。这将成为您的UAT分支机构。每次合并到暂存分支时,都要用sprint引用标记您的发布。一旦获得客户批准,就可以将发布合并到主分支

    有关更多信息,请参阅