源代码管理设计决策
在实现源代码管理时,应考虑对项目进行以下设计决策。
信息是共享还是专用信息?
你可以做出最重要的设计决策是哪些信息是可共享的,什么是私有的。 例如,共享项目的文件列表,但在此文件列表中,某些用户可能想要有专用文件。 编译器设置是共享的,但启动项目通常为专用项目。 设置是纯粹共享的、与替代共享的,或者纯粹是私有的。 根据设计,专用项(如解决方案用户选项(.suo)文件不会检查到 Visual Source 中保险箱。 请务必将任何私人信息存储在专用文件中,例如 .suo 文件或你创建的特定专用文件,例如 Visual C# 的 .csproj.user 文件或 Visual Basic 的 .vbproj.user 文件。
此决定并非独占性,可以逐项进行。
项目是否包含特殊文件?
另一个重要的设计决策是项目结构是否使用特殊文件。 特殊文件是隐藏文件,这些文件位于解决方案资源管理器和检查和检查外对话框中可见的文件。 如果使用特殊文件,请遵循以下准则:
不要将特殊文件与项目根节点(即项目文件本身)相关联。 项目文件必须是单个文件。
在项目中添加、删除或重命名特殊文件时,必须使用指示文件是特殊文件的标志集触发相应的 IVsTrackProjectDocumentsEvents2 事件。 这些事件由环境调用,以响应调用相应 IVsTrackProjectDocuments2 方法的项目。
项目或编辑器调用QueryEditFiles文件时,不会自动检查与该文件关联的特殊文件。将特殊文件与父文件一起传入。 环境将检测传入的所有文件之间的关系,并适当地隐藏检查出 UI 中的特殊文件。