我正在开发一个软件项目,该项目在同一个git存储库中维护源代码以及随附的用户手册(包括教程和参考资料等)。用户手册使用DocBook编写。
存储库针对不同的发布分支具有不同的分支。例如,我们有一个“主要”分支,可以提交功能,并从中创建下一个主要版本。我们还有一个“次要”分支,只有错误修正可以提交,并从中进行下一个次要发布。次要分支经常合并到主要分支,以确保所有已完成的错误修正也会在下一个主要版本中结束(这样我们就不会在例如v1.3和v2之间进行回归)。 / p>
我看到的问题是,由于主要和次要分支之间的软件不同(主要包含新功能),文档也是不同的(主要分支中的文档可能已在某些地方重写为提到新功能)。当将“次要”合并为“主要”时,这会不时地导致DocBook源中的冲突,因为分支之间的单行不同。对于其他文档文件(例如,ChangeLog
文件),这实际上是正确的。
我最近开始想知道如何改进这一点。我的想法包括:
我想知道 - 其他人如何处理将源代码和文档保存在一起的情况?请注意,我不是在谈论API文档(可以从源代码自动生成),而是简单的,手动编写的英文文本。
答案 0 :(得分:4)
我相信“选项3”(子模块)仍然是最不烦人的,因为它:
git status
)话虽这么说,我看不到用于管理文本文件中的并行演进的简单解决方案。冲突仍将存在。