2010-08-20 31 views
11

我正在研究C++和Objective C iPhone项目。我使用git作为我的版本控制系统。用git管理项目的Doxygen?

代码库已经增加了很多,所以我想在项目中添加Doxygen。问题是我不确定什么是最好的方法。

我想过几个选项:

1)在项目中创建文件夹中的Doxygen的HTML文档,使该项目的是“部分”,这样它也和版本致力于饭桶。

2)在项目中创建文件夹中的Doxygen的HTML文档,并将其添加到.gitignore因此该项目的每个用户负责生成文档和项目的Git仓库将保持不变(除了.gitignore)。

我们在我们的主服务器上使用了一个git -bare存储库,所以要在服务器中挂载一个包含HTML Doxygen的网页会很复杂(你实际上看不到带有git --bare回购的项目文件,所以我将无法看到Doxygen生成的HTML文档,除非我单独上传)

也许我可以做一些cron-job,以保持在服务器端更新doxygen?

帮助非常欢迎。

回答

18

我认为不应该将生成的文件存储在源存储库中,特别是当它们是由通常可用的工具(如Doxygen)从已存储在存储库中的文件生成时。在Doxygen的情况下,您只需要在回购中存储Doxyfile

(或者,更好的,如果你使用autoconf,商店Doxyfile.in,从而使当前的项目版本号被代入生成Doxyfile作为configure步骤的一部分。)

如果你想确保每个检查项目的人都会获得Doxygen生成的参考手册的副本,使其成为默认构建过程的一部分。

4

我同意沃伦,但我想补充以下内容:

您可以使用“”后收到钩“”每有一个推纯仓库时自动更新(独立)工作目录。这种方法描述为在这里维护受版本控制的网站http://toroid.org/ams/git-website-howto,我以这种方式使用它。

我觉得你可以在更新后添加一个步骤来运行Doxygen,这将是你要找的东西。您可能需要考虑如果Doxygen borks如何向用户/提交者报告错误,但这是我看到的唯一问题。

0

入住仅doxygen的配置文件,

让你continuous integration服务器建立文档并将其发布到内部可用的网站,分享与团队的URL。