我难以说服组织中的其他人停止在结帐时不加选择地锁定文件。有什么想法,我可以找到一个“官方”文件,解释为什么应该谨慎使用结账锁? Microsoft建议:
作为最佳做法,请谨慎使用“锁定类型”选项 通知你的队友锁定物品的原因,以及你的计划 删除锁。
但没有详细说明。
我能指出的任何事情都会非常有帮助。
答案 0 :(得分:9)
虽然我没有正式的Microsoft源代码,但我是应用程序生命周期管理的MVP,所以希望这足以让这个引人注目。 :)
在结账时锁定文本文件(即代码)可能会严重阻碍生产力。当我在同事工作的时候,我自己已经看到了,并且他们对文件进行了独占锁定。突然间,这是一个大拇指蹒跚的时间。当您尝试排查或修复时间紧迫的问题时,情况会更糟。
人们想要锁定文件以进行独占编辑的最常见原因是因为他们不想在以后执行混乱的合并。
这通常是一件事或多件事的症状:
partial
关键字将同一个类分割为多个文件,尽管我想要记录并说明每一个时间我在代码库中看到这一点,它让我哭了一阵无限悲伤。有时候对代码文件的独占锁是好的还是有用的?可能,但我无法想到它解决的问题,可以通过使用其他更合适的源代码控制功能解决这个问题。
如果可以,请使用本地工作区,因为他们不会强制执行排他锁。
答案 1 :(得分:0)
对我来说,当我签入* .sln或* .csproj文件中的更改时,排他锁变得很有用。否则,在执行并发签入时会出现问题,因为VS似乎将这些文件缓存在内存中而不保存到磁盘。