문제

Doxygen은 약간 느립니다. 전체 프로젝트를 처리하는 데 약 2 분이 걸리므로 작은 증분 변경의 경우 실제로 내 코드의 나머지 부분을 구축하는 것보다 길다. 문서가없는 수천 개의 파일이 있으므로 대부분의 시간을 처리하는 데 사용하는 것 같습니다. 문서화없이 파일을 건너 뛰는 방법이 있습니까?

변경된 파일 만 처리하도록하는 것은 어떻습니까?

도움이 되었습니까?

해결책

From Doxygen documentation:

How can I exclude all test directories from my directory tree?

Simply put an exclude pattern like this in the configuration file:

EXCLUDE_PATTERNS = /test/

So, you should be using patterns to exclude files. It's been a long time since I've used Doxygen, but i don't remember any option to process only changed files.

다른 팁

I found that turning off the option SEARCH_INCLUDES made a big difference. It was looking through the whole platform SDK and include paths for the compiler which were not documented anyway and would not appear in the generated documentation.

There is a DOT_NUM_THREADS options which may increase the performance on multicore machines. Unfortunately doxygen itself is just single threaded.

Another approach would be to organize your code into modules run for each module a separate doxygen instance and link the resulting tags together: http://www.doxygen.nl/manual/external.html

Doxygen is good at finding connections between files, either changed or not. But Doxygen does not remember informations about unchanged files, so it must process the whole codebase each time.

May be a solution would be to organize the project such that never changed files belong to one module which is excluded from Doxygen scope and whose documentation is already available. Then it would be possible to tell Doxygen to link newly built documentation to this existing module documentation.

Going further, it would also be possible to make Doxygen running module by module, processing only changed modules and a top level documentation which links to all module documentations.

I don't think having Doxygen run on a normal dev cycle is a good idea. Our Doxygen build runs as part of our Continuous Integration server's responsibilities.

That said, there are some benefits of running doxygen every build to catch missing docs. So I would trim the doxygen config for dev builds removing diagrams, and even stop apple importing it into xcode.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top