所以我遇到了一个情况,我们有一个有 10 名开发人员的项目。每个开发人员当天进来时,都会随机分配一台机器用于当天的开发。机器名称不同,例如 DEV01 - DEV10。在将它们发布给开发人员时,机器是相同的,并且开发人员在白天所做的任何更改都不会保留在机器上(源代码更改存储在 TFS 中,而不是本地)。这些当然实际上是虚拟机,但这与手头的问题并不真正相关。
问题是每天早上,开发人员都会遇到 3 个问题:
1) 他们被分配的机器可能不是他们最后被分配到的同一台机器。例如,DevMan A 可能昨天使用了 DEV04,今天收到了 DEV06。他的工作空间定义现在与 DEV06 相关联;他必须创建一个新的工作空间,或者将旧的工作空间迁移到 DEV04。
2) 他们分配的机器可能昨天已经在使用,并且某些映射可能会发生冲突。例如,DevMan A 今天可能有 DEV04,并希望创建一个工作区,将项目文件夹映射到“C:\MyProj\Solution”。但是,DevMan B 昨天有 DEV04,他使用了相同的项目文件夹。TFS 现在抱怨。
3)这可能是他们第一次在给定的机器上。他们现在需要为这台机器重新创建新机器的所有源代码控制映射。
所有这些问题都可以根据具体情况以简单的方式解决,但它确实会降低早上的工作效率。如果 TFS 工作空间定义可以“宽松”,我们更愿意,这样它们就不会以某种方式在定义中包含机器名称。除此之外,如果有人知道上述问题的解决方案可以自动运行或在有限的用户干预下运行,那也是理想的。