是否有针对您自动格式化代码的TFS签入策略?

Gri*_*der 7 c# tfs

也许我正在寻找的东西不存在,但我听说有传言说在TFS中你可以设置一些自动格式化/在检查中设置样式化源代码的方法.到目前为止,在研究中我已经完成它看起来像"签入策略"只是发送警报,如果您的签入被标记...是否有某种方式可以在签入时自动格式化代码或这只是如意思维?您能否提供/链接到示例.

Jas*_*ams 0

这些并不是真正直接的答案,但它们可能会对某人有所帮助:

对于许多语言,您可以在 Visual Studio 中键入时启用自动格式设置(工具 > 选项 > 文本编辑器 > {语言} > 格式设置),因此在签入之前整理代码应该不会太困难。

您还可以通过“编辑”>“高级”>“格式化文档”按需格式化文档 - 因此您始终可以在签入之前执行此操作(尽管您必须重新打开所有待处理的更改)

保持代码整洁通常非常快速/容易(尤其是上面的代码)。如果您过于沉迷于“完美”格式,那么您会发现自己在缩进和布局上浪费了大量时间,而不是做有用的工作 - 当您回到页面时,您会发现自己对“损坏”格式感到恼火。几周后使用相同的代码,却发现您认为完美的代码仍然存在一些问题,或者您的个人编码风格略有偏差。当您尝试在团队中工作时,这种行为甚至可能导致与他人的风格之争,这可能是一种严重的破坏性活动。因此,当“足够好就足够了”时,学习就有价值,并且不要浪费精力试图达到完美。

最后,编写位于 TFS 事件上并处理所有签入以强制执行编码布局样式的代码将非常容易。但是,如果您觉得需要/合理地付出大量的努力,那么您可能会沉迷于文本布局的完美,并且可能会从更多地关注编写良好的可维护代码而不是使其看起来漂亮中受益。编译器并不关心,所以只要代码对您和您的团队成员来说是可读的,它可能就足够了。

  • 使用工具在签入时格式化代码的一个重要原因是不同的开发人员有不同的风格偏好。当Dev a. 签入后,存储库中的代码将与 Dev b 时的代码相同。签入 - 因此源比较将仅显示真正的代码更改,而不显示格式更改。签出后,各个开发人员可以使用他们喜欢的任何格式化工具来使内容保持他们想要的样子。这对于“同一行或下一行大括号”战争特别有用! (6认同)
  • 我必须不同意。当作为单独的开发人员处理项目时,格式并不重要,而且可能很容易掌握。然而,当作为团队的一部分工作时,如果多个团队成员都有自己的风格和编辑器首选项,那么整个项目中格式不一致可能会减慢开发人员的速度。作为团队的一员工作时,拥有一个可以自动强制执行商定的代码风格的工具非常有用。使用这样的工具并不是“沉迷于‘完美’格式化”,而是使用计算机来强制执行一些常见的约定。 (4认同)