Repository Guide¶
Repository name¶
All repositories must be named in kebab-case without capital letters. Repository names must not include Gamify-IT in their name.
README name¶
READMEs must be named exactly the following: README.md
Branch names¶
bug fix:
bugfix/$bugnamefeature:
feature/$featurenamedocumentation:
documentation/$documentationactionmaintenance:
maintenance/$maintenanceaction
The part behind the specifying action should be written in kebab-case without uppercase letters.
How to commit¶
Commit messages should be able to complete the following sentence: If applied, this commit will
For example If applied, this commit will update getting started documentation.
If something is unclear, you can read more about it here.
Pull Requests¶
At the end of the PR’s description, the corresponding issue should be referenced in one of the following ways:
if the PR fixes a bug, the
Fixesprefix shall be used. (e.g. Fixes #5)if the PR closes another issue type, the
Closesprefix shall be used. (e.g. Closes #5)if more than one issue is closed by this PR, each
Fixes/Closesshould be on a separate line.
If a PR is not ready to by merged by means of the author, he should tag the PR with the
WIP:prefix.Merging Requirements for a PR:
At least 2 approvals are required. This can be shortened to 1 approval if the PR changes less than 10 lines. GitHub only allows more than one reviewer if the repository is public
No pending requested changes
If the PR fixes issues, all such issues must be mentioned with
FixesorClosesin the PR descriptionNo
WIP:prefixAll CI jobs passed
A new contribution to the branch invalidates all preceding approvals.
Force Pushesshould be avoided at all costs. Exceptions are:Security relevant data was pushed and has to be removed from the history
Large files which should not remain in the repository were pushed
Every maintainer of the project is allowed to merge the PR if all merge criteria in #3 are fulfilled.
Clean Code¶
Writing clean code shall always be prioritized before other targets, especially development speed.
Favor readability over consciseness, try to use appropriate identifiers instead of comments to document your code.
Add documentation where it is useful, avoid boilerplate comments.
General Guidelines for Good Measures¶
Users should be referenced by their user names using an
@and not by their real names or other aliases.Jokes or non-constructive contributions are allowed as long as they don’t hinder the development workflow and inhibit professional conduct.
The language used is English. Unless you are talking about something related to
i18norl10n, no other language will be accepted.If you write a message in another language, you will be asked to translate it into English before any further communication can occur