Documentation for reserved/special repositories/folders

I’ve been googling my self to death trying to find documentation of the special repositories and folders that can be used for configuration in github. As an example, the .github repository seems to enable you to configure a bunch of stuff for an organization, just as the .github folder does for repositories.

Does anyone know where the documentation for these special folders/repos are made available?

I think that these special folders and repos are supposed to be configured by GitHub via the WebUI menus, and not to be manually edited by end users. So there doesn’t seem to be a centralized documentation page for these, instead they are mentioned in the various features that affect them (e.g. Issues templates, teams settings, etc.).

These individual pages often contain guidelines about how to edit the contents of the special .github/ folder, as guidelines for developers who might wish to automate the process; but (as I said) I don’t think you’ll find a comprehensive documentation for these folders/repos — unless there’s a public repository for the GitHub library code that handles them on GitHub, which might then provide such a documentation (assuming a single library handles all the features that go into that folder, instead of different independent libraries handling the various features).

Slightly off-topic, but how do you use the .github repository? I tried setting one up (https://github.com/Jme7/.github) and I have a CODEOWNERS file, but that file isn’t doing anything. Am I doing it wrong? Thanks in advance. :heart:

I’ve never come across the .github repository before, so I have no clue what it’s used for (you mentioned it being used for organizations, but I don’t have much experience on that either).

I’ve used CODEOWNERS settings at the repository level, and it’s intended to protect files and folders from changes coming from non authorized users — i.e. deciding which GH users have the right to change certain files. It’s useful to prevent meddling with sensitive files, e.g. files that could compromise security, or legal matter that is not supposed to be changed at will.

If I’ve understood correctly, you’re trying to set files ownership at an organization level — i.e. specify file patterns that should work across all repos of that organization. I didn’t know you could do that, but if you can it would be quite useful. I would expect the rules to be same applying to single repositories (except having a “global” scope):

2 Likes

Yes that’s my feeling as well. It would nice though.
I’m looking at defining sane defaults, like CONTRIBUTING, workflow templates etc for organizations. Seems like most of it works for public orgs, not private ones. :frowning:

1 Like