TFS /源代码管理:如何管理修补程序

时间:2013-12-03 18:12:33

标签: version-control

我尝试了解使用TFS /源代码控制管理修补程序的正确方法。

假设我有一个小项目只包含两个文件(app.js和util.js)。这两个文件都在源代码管理下(Team Foundation Server)。

假设我在两周前申请了一个标签,表明部署到服务器的“里程碑-1”。从那时起,我应用了其他几个修改(扩展app.js并添加了另一个文件)。

今天我发现了一个错误,所以我从服务器上获得了标签“milestone-1”的版本,修改了util.js并将此版本部署到服务器。目标是在服务器上只部署版本“milestone-1”,包括hotfix-1,但不是我过去两周应用的修改。

问题是:我如何/在哪里签入TFS的修补程序?因为我明天可能会发现另一个错误所以我必须得到版本“milestone-1”和hotfix-1基础来应用第二个修补程序。

有没有办法将我的代码版本签入到标有“里程碑-1”和我的最新版本之间的“TFS”?

2 个答案:

答案 0 :(得分:3)

分支和合并!

我们有以下开发周期:

  1. 创建初始项目,分配权限并将其导入TFS,分支名称为" Main"。
  2. 因为这是开发的最初迭代,我们分支" Dev"来自main,以及开发人员工作的地方。请注意,此时尚未正式发布。
  3. 开发完成后,将合并回Main。主分支上没有Dev工作。
  4. 我们分支"发布"来自main,这是实际部署代码的点,版本号也会更新。
  5. 好的,那么,更进一步,我们必须做出一些修改。再一次," Main"再次扩展,开发工作继续在Dev Branch。一切都很好。然后,用户报告需要修复的错误,并且需要快速修复。但是我们已经完成了其他开发的一半!怎么办?

    此时,我们再次从main分支。我们称之为" HotFix"。修复了该错误,然后将HotFix合并回main。然后我们可以将它合并到我们的发布分支中,并发送更新。我们当前的开发工作没有中断,我们在这一点上所做的工作都没有在Main上存在。

    我们终于完成了我们的开发工作,然后我们将其合并到主分支中,然后再发布。因为我们的Hotfix分支已合并到main,我们的新开发工作包含我们之前动态修复的修补程序。

答案 1 :(得分:1)

你应该使用分支。查看“巡游者”指南。

我过去成功使用过高级分支计划,但您可以根据自己的需要进行自定义。您需要遵守分支,合并,签入等规则。还要考虑搁置集以进行代码更改,这些代码更改尚未准备好提交到DEV分支。

http://vsarbranchingguide.codeplex.com/

如果您想了解更多信息,请与我们联系。