Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
TFS分支机构战略,包括构建和恢复_Tfs_Tfsbuild_Ms Release Management - Fatal编程技术网

TFS分支机构战略,包括构建和恢复

TFS分支机构战略,包括构建和恢复,tfs,tfsbuild,ms-release-management,Tfs,Tfsbuild,Ms Release Management,我研究了在VSS中为现有项目使用TFS/Build/InRelease的最佳方式/策略 最坏的情况以前发生过: Main 2.0 --------------------------------------------> Release 3.0 |------------------------------------| Release 2.1 |----------------------| Release 2.0.1 |---| 3.

我研究了在VSS中为现有项目使用TFS/Build/InRelease的最佳方式/策略

最坏的情况以前发生过:

            Main
2.0 -------------------------------------------->

Release 3.0 |------------------------------------|

Release 2.1    |----------------------|

Release 2.0.1        |---|

3.0 : take 120 days start at day 1
2.1 : take 30 days start at day 20 (to day 50)
2.0.1 : take 2 days start at day 30
首先我看

所以我做了这样的东西:

/MySystem
/MySystem/[Main]
/MySystem/Release 2.0.1
/MySystem/Release 2.0.1/[Service]
/MySystem/Release 2.0.1/[Release]
/MySystem/Release 2.1/[Service]
/MySystem/Release 2.1/[Release]
/MySystem/Release 3.0/[Service]
/MySystem/Release 3.0/[Release]

Service is a branch from Main. 
Release is a branch from Service.
You should use Release for builds definitions.
 /MySystem
    /MySystem/[Main]
    /MySystem/Dev
    /MySystem/Dev/[Major]
    /MySystem/Dev/[Minor]
    /MySystem/Dev/[Hotfix]
使用此策略,我需要为每个发行版创建一个新的构建定义,并在InRelease中编辑发行版模板或创建一个新模板

创建一个构建定义需要花费一些时间,但我认为值得冒险

同事们建议使用4行Main、Major、Minor和Hotfix,每行都有一个构建和一个发布模板

看起来是这样的:

/MySystem
/MySystem/[Main]
/MySystem/Release 2.0.1
/MySystem/Release 2.0.1/[Service]
/MySystem/Release 2.0.1/[Release]
/MySystem/Release 2.1/[Service]
/MySystem/Release 2.1/[Release]
/MySystem/Release 3.0/[Service]
/MySystem/Release 3.0/[Release]

Service is a branch from Main. 
Release is a branch from Service.
You should use Release for builds definitions.
 /MySystem
    /MySystem/[Main]
    /MySystem/Dev
    /MySystem/Dev/[Major]
    /MySystem/Dev/[Minor]
    /MySystem/Dev/[Hotfix]
对版本使用标签。你们需要理解这个标签,不要忘记你们是如何使用它的,要使用它,新家伙通常只是在某个地方创建一个新的分支

如果我想要每个版本的完整分支:

 /MySystem
        /MySystem/[Main]
        /MySystem/Release
        /MySystem/Release/[Major]
        /MySystem/Release/[Minor]
        /MySystem/Release/[Hotfix]
        /MySystem/Service
        /MySystem/Service/Version 2.0.1
        /MySystem/Service/Version 2.1
        /MySystem/Service/Version 3.0
这一个稍微复杂一些,因为当您想要创建一个新的服务时,您需要更新好的发布版本,并用这个版本创建一个新的分支。你不应该换父母


每种策略都有效。我应该用的巫婆?也许你有更好的东西。

你还在使用InRelease吗?如果是这样的话,现在正是你转换到重新命名的微软版本的时候了,因为在过去的两年里已经有了很多改进。我是作为一个为最初写InRelease的公司工作的人说的。是的,我们正在使用InRelease。我无权使用microsoft版本。我寻找使用它的最佳方式。谢谢