github - Travis-CI 不发布 doxygen 文件级文档
问题描述
我有一个项目,我在 CI 作业中构建 doxygen 文档并使用 github-pages 发布。
但是,我遇到了一个问题,文件的文档(即使用doxygen 的 @file 命令生成)没有上传 - 链接存在并且文件存在于 gh-pages 分支中,但单击任何链接会导致 404错误。例如,这应该导致该文件,但链接已失效。
据我所知,这是因为 Jekyll 忽略了名称以下划线开头的任何文件,这是 doxygen 使用的输出模式(据我所知)无法改变它。看起来要解决这个问题,您需要告诉 Jekyll 包含这些文件,但到目前为止这对我不起作用。
我试过了
- 将 _config.yml 文件添加到 master 分支以包含
_*.html
文件 - 修改该文件以包含
_
- 将该文件交换为
.nojekyll
文件 - 在构建过程中创建 .nojekyll 文件
- 在 gh-pages 分支中创建一个 _config.yml 文件(这个没有链接,因为 travis 完全覆盖了它:P)
我在 master 分支上创建的任何这些文件似乎都在 gh-pages 分支中被忽略了,并且我在 gh-pages 分支上创建的任何文件都(可以预见地)被 travis 覆盖。
如何将这些文件发布到网页?
解决方案
默认情况下,Doxygen 决定如何根据使用的操作系统创建输出文件名。这导致 ao 在不区分大小写的系统上始终存在唯一名称(例如,通过将大写字符替换为下划线后跟相应的小写字符(下划线替换为双下划线)。为了引导这一点,配置参数CASE_SENSE_NAMES
可以是用过的。
从文档(1.8.15):
CASE_SENSE_NAMES 如果 CASE_SENSE_NAMES 标签设置为 NO,那么 doxygen 将只生成小写字母的文件名。如果设置为 YES,也允许使用大写字母。如果您有名称仅大小写不同的类或文件,并且您的文件系统支持区分大小写的文件名,这将非常有用。
建议 Windows 和 Mac 用户将此选项设置为 NO。
默认值为:系统相关。
推荐阅读
- typescript - 使用 Angular 6 打开街道地图 - 向地图添加标记
- php - Captcha BotDetect:意外的令牌 < 每隔一页刷新一次
- angular - withLatestFrom 运算符不会在空值上打勾
- outlook-addin - 如何使用移动加载项获取电子邮件正文
- java - 使用 G1 GC 时如何知道何时调整堆大小?
- sql - 从 Sql Server 以表格格式提取 XML 数据
- perforce - 如何在 perforce 中更改“Alt 根”?
- rest - 请指导我有关通过令牌进行 RESTFul 身份验证的 Yii2 代码
- xpages - 从 database.getfilepath 美化我的 URL
- typescript - 如何定义一个 1 到 100 并集的类型?