final并不是版本信息
文件名写着final、new或latest,只反映某个发送者当时的判断。多人协作后很快会出现final2和latest-new。
版本应有稳定标识,并能找到生成时点、修改内容和前一版本。
数据与说明同步发布
表格更新而数据字典未更新,会让新字段无法解释。脚本改变而结果沿用旧名称,也会造成错误比较。
一个发布版本应把相互依赖的对象作为整体记录。
不可变发布与可变工作区
工作区允许反复修改,正式交付版本则不应被原地覆盖。需要修正时发布新版本并说明差异。
这样旧论文、会议讨论和日志仍能指向当时真实使用的对象。
校验值帮助确认收到哪一份
版本号相同但摘要不同,说明至少有一个副本被修改。版本号不同而内容相同,则可能只是标签变化。
两项信息结合比只比较名称或日期更可靠。
时区与修改时间会误导
复制、解压和云端同步可能重写时间戳。不同地区的本地时间也会让排序出现偏差。
时间适合辅助判断,不应成为唯一版本依据。
谁批准版本也要明确
分析人员可以产生候选结果,但正式交付可能需要项目负责人或数据管理员确认。
审批不等于对科学结论负责,却能说明哪一份被项目采用。
冲突需要保留而不是静默覆盖
两组成员同时修改时,应比较差异并决定合并方式。自动选择较新文件可能丢掉另一方的重要变化。
冲突解决记录会成为后续复盘的一部分。
让接收方能独立复核
交付说明应写明版本、对象、校验、主要变化和已知限制。
当接收方无需回头询问“到底用哪一份”,版本管理才真正服务于协作。
分支适合探索,发布适合引用
分析人员可以在不同分支测试清洗方法或模型参数,避免实验性修改影响共同基线。进入论文、报告或外部交付前,再把采用结果整理成明确发布版本。
发布记录应指出它来自哪个输入和处理环境,不能只留下最终压缩包。
版本冲突常包含语义差异
两个表格即使行数相同,也可能使用不同单位、样品排除规则或标识映射。比较冲突时要阅读字段定义和处理日志,不能只根据修改日期选择副本。
对科学协作而言,保留差异并说明采用理由,比静默合并更能保护后续解释。
论文更正不能覆盖旧图
图表标签或筛选条件需要修正时,应保留原图、生成脚本和新版本。审阅意见、预印本与正式出版物可能引用不同图号,覆盖旧文件会让讨论失去对象。
变更说明应区分视觉调整、数据筛选和科学判断,三者影响范围并不相同。
时间戳只能作为辅助线索
复制、解压和云端同步可能重写修改时间,不同系统还会使用不同时区。版本判断应以稳定标识、变更记录和内容摘要为主,时间只用于帮助排列事件。
跨实验室交接时统一记录带时区的时间,可以减少对截止点和冻结版本的误解。