我正试图在我们的团队开发环境中自动化文档构建,因此我们决定使用phpDocumentor(2.7.0)并触发它在SVN提交后重建文档。
我已经做了一个触发器,但我很高兴所有文档在每次执行时都会重新生成,因为即使我只提交了一个修改过的文件,phpdoc命令也会像文档初始生成时一样持续几乎相同的时间。
所以我的想法是只重建那些在提交中更改的文件的文档。有这样做的可能性吗?我查看了phpDoc和Google的文档,但没有找到任何内容。
只要您上一次phpDocumentor2执行的结果文件与您将要运行新执行的文件位于同一位置,默认情况下只应处理新的/修改过的文件。phpDocumentor2有一个内置的缓存机制来跟踪"这是我们在上次文档运行中所做的一切",这样它就可以确定添加/更改了您的哪些代码文件。
当然,如果您的构建每次都是全新运行的,那么上一次运行的缓存就不可用,因此phpDocumentor2只知道"这是有史以来第一次执行"。
您可以使用svnlook changed
获取受修订影响的文件列表。如果可以使用单个文件作为参数,则可以仅通过管道将所需文件传送到PHPDoc