Hi Martin, On Tue, Aug 13, 2013 at 4:55 PM, Martin Sustrik <sustrik@xxxxxxxxxx> wrote: > Hi Evan, > > >> That said, from a hacker side, I didn't really care that I had to add >> a bunch of extra packages to make docs, but those dependencies were >> readily available on my system. If the docs are in its own directory >> and the dependencies are only required if I 'make docs', then does it >> matter to me where they live? > > > No, it doesn't really matter it it's a different directory, different branch > or different git repo. The only point is to keep the two fully separate and > copy generated docs from the doc-component to the lib-component. > Well it matters. Having *different branch*, means tags for docs will have different name from tags for source (e.g. v1.0.0 vs v1.0.0-docs). It's also means two pull requests, so two different issues/tickets on github for each feature for docs branch and for master. It's very inconvenient. Having *different git repo*, still means two patches, two pull requests and two issues opened, but at least it's more clear where pull request should go. And probably all feature pull requests will go without docs :) *Different directory* is ok, from a perspective of patches. But may be inconvenient when updating docs after release. Also if you keep generated docs alongside with non-generated docs in single git, does updating generated docs should be in the same commit or not? Do you have to accept patches with generated files together? > The only reasons for separating the repos the would be not to confuse users > (like believeing they have access to doc sources when they are actually > working with library source code) and not to confuse the toolchain (two > ./configures in a single project?). > That's a smallest reason to me. It's easy to implement "make doc" in any case, as easy as implementing "./configure --without-docs" All in all, I'd say the most up to date man pages should be tightly coupled with the code. And other docs should be in other repository. And a release tarball should probably contain pre-generated man pages, but better keep them off the git repository. -- Paul