【发布时间】:2014-01-24 13:43:37
【问题描述】:
目前,我团队的开发人员手动格式化他们的源代码(C++、C+,存储在 MS 的 TFS 2012 中)。我们现在正在考虑使用 Visual Studio 的自动格式化选项(可能使用 Uncrustify 作为漂亮的打印引擎)。这个想法是确保没有人有任何传出更改,然后格式化整个代码库并提交结果。从那时起,我们会将自动格式化集成到我们的工作流程中。
但是,我们担心之后我们将无法使用 Source Control/Annotate 轻松找出谁对特定代码行进行了最后更改(该信息通常非常有用,例如用于询问相应的开发人员关于那个代码)。
所以这是我的两个问题:
a) 有没有人有将自动格式化引入团队工作流程的经验(鉴于已经存在且相当大的代码库)?有没有这方面的最佳做法?
b) 特别是:有什么方法可以在不丢失历史信息的情况下格式化我们的完整代码库?我可以例如想象一个工具,它可以在格式化后跟踪每行的去向,并调整 TFS 的历史记录以保留该信息。但是,我现在还没有找到类似的东西。
【问题讨论】:
标签: c# c++ pretty-print