Configuring Doxygen with github

I had heard that it was possible to setup projects in github and have the corresponding Doxygen output available online. A quick search of the terms brought me here,

http://rickfoosusa.blogspot.in/2011/10/howto-use-doxygen-with-github.html

The instructions seemed simple enough and I decided to make my own account on github. It took me a few hours but here’s my test repository,

https://github.com/abrahamvarricatt/test

And here is the corresponding documentation,

http://abrahamvarricatt.github.io/test/

There’s not much to see in the way of documentation and the source code itself is a basic “Hello World” application that I shamelessly copied from somewhere.

The point of this endeavor was to understand how difficult/easy it would be to configure things. As it turns out, the most difficult thing I faced was authentication (SHTTP vs SSH, but that’s a discussion for another time). Creating an account and uploading the project was simple. I was already familiar with using git for local version control and going remote … well, the idea of “pushing” puzzled me for a bit (and navigating the terminology offered by the Eclipse IDE!) but I was able to set things up just fine.

The problem happened when I tried updating the repository. Initially, it looked like Eclipse wouldn’t listen and try pushing the repo without asking me for my credentials, but after a lot of searching, I got it working. The trick was to manually set the repos myself instead of having git auto-configure things.

The next issue was the doxygen bit. How exactly did github organize things? On the main github page, there’s a link to “wiki”. But that didn’t look in any way similar to the static HTML links that were mentioned on rickfoosusa. Then, I found it! Under the “Settings” section, there is something called “GitHub Pages”. After activating it, github created a new branch in my project. What they do is use that as a base for the project’s static HTML documentation.

Now, to fork a project and get some use for this feature!

Advertisements