2015-06-30 74 views
2

很多人告诉我,我的checking in代码上TFVC最好的做法是getting latest之前。TFVC签入最佳实践

我不知道为什么我觉得TFS足够聪明且有后checkin

+4

因为最好是通过自己解决可能的冲突,而不是像其他人那样把这个工作留给别人 –

+0

,最好先检索所有修改,检查一切正常/编译/通过测试,然后再提交任何内容。 请记住,你的工作可能是确定的,但与远方的修改不兼容。 – jlevet

+1

您可以自动合并,但这是否意味着所有测试都通过了?代码仍然编译?不。所以你做一个最新的,你执行一个构建,你运行测试,然后登记。 – jessehouwing

回答

2

getlatest然后checkingetlatest之间没有差异TFS的工作时,我会分享我的一些看法:

这是聪明,它有助于多次执行自动合并(如果我的代码不与其他人冲突)。否则,您可以看到所有冲突的文件并按文件合并自己,或者您可以决定采用服务器版本/本地版本。

如果不这样做获得最新的,则可能需要进行第二次拍摄,例如: - 将某些文件添加到项目Business.csproj - 你的运动课也加入了一些文件到该项目。 TFS合并文件并要求Visual Stiduo重新加载项目。

让我们的影像,我们经常在检查前,检查所有更改,运行测试...。有40个文件,在这两种情况下冲突或重新加载项目,第二检查需要做的事情......

6

在我在TFS与TFVC工作时认为,这个过程应该是:

  1. 你获得最新
  2. 你写你的测试
  3. 你让他们通过
  4. 您获得最新的包括CON flicts和解决所有冲突
  5. 你运行你的测试
  6. 如果他们失败了,你修复并返回到4
  7. 当他们通过,并做了后,获得最新的,你签

(这个过程是相同的所有基于服务器的源代码管理系统)

如果你不这样做,那么你不写你的代码在最新的代码库,所以虽然tfvc可以合并,如果事情发生像一个方法被改变或删除,合并将无济于事。

做一个好公民,你签之前获得最新的 - 最好你应该有一个CI构建,检查这一点,如果你这样做你会经常打破建立这是坏大家。

编辑:我补充说,当你签出时你也会得到所有的冲突,否则如果你做了一些像添加一个文件那样的项目将不会被下载,当你做最新的时候,这实际上是非常重要的TFS 。