在TFS,我应该标注或创建一个产能释放的一个分支?(In TFS, should I label o

2019-07-20 17:54发布

当进行部署到生产,我应该记住我的代码的标签或这是生产的代码创建一个分支?

Answer 1:

在TFS,我想有一个发布分支与标签标识特定版本被释放到生产。

这将意味着你有其他分支可能我建议以下

  • 三大分支:主,开发和发布。
  • 一个修补程序分支为当前火灾。
  • 0到N的主要特征分支包含发展的破坏。

细节

  • 主枝
    • 包含最新的稳定建立
    • 标记/标签每个版本
  • 开发分公司
    • 从主支
    • 当大部分的工作是做
    • 发布之前合并回主
  • 发布分支
    • 从下面的一个分支的:
      • develop分支
      • 或主分支(这可能会更好,因为它是“稳定”)
    • Bug修复都是在这里完成
    • 经过修复的测试和发布,
      • 合并开发分支
      • 或合并到主分支,再往前整合(FI - 这是从父到子合并)开发
    • 标记/标签每个版本或错误修复
  • 修复科
    • 从主支
    • 合并到主
    • 正向整合合并发展
    • 用于允许主保持“稳定”
  • 主要功能分支
    • 从开发支
    • 合并回开发
    • 用于主要功能,将可能扰乱正常的发展路径

参考文献:

  • 另一个堆栈溢出问题: 当使用的-一个标签-标签和时-转移尤其是马丁·伍德沃德的答案
  • 源代码控制如何由埃里克库
  • 一个成功的Git分支模型由文森特Driessen的
    • 这包含一个分支模型的一个很好的图形


Answer 2:

理想的情况是,无论是。

你可能想有一个标签 ,让你知道你的具体的发布提供什么。 不过,你可能也想创建一个分支 ,这样就可以对什么进行发布小错误固定,并创建一个新的版本。



Answer 3:

在实践中,你可以通过以下两种方式之一来解决:

  • 有被分支,每个生产排放的持续发展时间表:

例:

 ------------------------->dev
     |      |      |
     |      |      |
     |      |      |
    v1.0   v2.0   v3.0
  • 让你的产品发布“级联”掉彼此的:

例:

---->v1.0---->v2.0---->v3.0

最终,由你决定什么样的架构采用,只要它是一致的,对你有意义。



Answer 4:

您可以使用两者的结合。 下面是我们如何对所有项目做到这一点内部。

我们有一个文件夹分行和子文件夹的每个主要和次要的版本结构。 我们还使用我们的各个子文件夹设置标签,这样我们就可以很容易地重建任何特定版本在未来的任何时间。

$\Branches
    \2012.01
    \2012.02 (branched from 2012.01)
    \2012.03 (branched from 2012.02)
    \2013.01 (branched from 2012.03)

您还可以检查出的Visual Studio Team Foundation Server的分支与合并指南了解更多详情。



Answer 5:

我已经看到了这两个做,贴标更轻盈和我来说更容易。 但是,它已经指出,标签可以相当容易地删除。 分支并不实际,除非被“破坏”删除防止这一点。 我不喜欢用树枝的原因是我讨厌不得不掩饰他们为我倾向于做得到根本最新,不希望所有这些分支填补了我的硬盘驱动器

为了记录在案,因为它向我指出的关于标签的从每个人,但管理员和构建服务帐户,以帮助减轻这种标签被删除我已删除的权限。



文章来源: In TFS, should I label or create a branch for a production release?
标签: tfs branch