Whenever you encounter a 🪲 bug or have 🎉 feature request, report this via [Github issues](TODO: Link to issues).
We are happy to receive contributions to our project in the form of pull requests via Github.
Feel free to fork the repository, implement your changes and create a merge request to the develop
branch.
There is a forking guide available to get you started!
The development follows a simplified version of git-flow: The main
branch always contains stable code.
New features and bug fixes are implemented in feature/*
or fix/*
branches and are merged to develop
once they are finished.
When a new milestone is reached, the content of develop
will be merged to main
and a tag is created.
[Github Actions](TODO: Link to actions) are used for continuous integration.
All pull requests and pushes to main
and develop
are built automatically.
Commits should start with a Capital letter and should be written in present tense (e.g. 🎉 Add cool new feature instead of 🎉 Added cool new feature). It's a great idea to start the commit message with an applicable emoji. This does not only look great but also makes you rethink what to add to a commit.
- 🎉
:tada:
when adding a cool new feature - 🔧
:wrench:
when refactoring / improving a small piece of code - 🔨
:hammer:
when refactoring / improving large parts of the code - ✨
:sparkles:
when formatting code - 🎨
:art:
improving / adding assets like textures or images - 🚀
:rocket:
when improving performance - 📝
:memo:
when writing docs - 🪲
:beetle:
when fixing a bug - 💚
:green_heart:
when fixing the CI build - ✔️
:heavy_check_mark:
when working on tests - 🔼
:arrow_up_small:
when adding / upgrading dependencies - 🔽
:arrow_down_small:
when removing / downgrading dependencies - 🔀
:twisted_rightwards_arrows:
when merging branches - 🔥
:fire:
when removing files - 🚚
:truck:
when moving / renaming files or namespaces
This is pretty straight-forward. Just click the Fork button on the top right of this page. Then clone the forked repository, perform your changes, push to a feature branch and create a pull request to the develop branch.
git clone [email protected]:<your user name>/<project name>.git
cd <project name>
git remote add upstream [email protected]:<user/organization>/<project name>.git
git checkout develop
git checkout -b feature/your-new-feature
# or
git checkout -b fix/your-bugfix
# ... do and commit your changes!
git push origin feature/your-new-feature
When there were changes in the develop branch, you will need to merge those to your fork before creating a pull request:
git fetch upstream
git merge upstream/develop
Then you can create a pull request on GitHub to the develop branch.
Refer 🚀Quick Start for setting up the Project.
💡 TIP
See the README.md. Maybe add some further requirements only for contributers here.
Tip
Add meaningful documentation to all classes, functions and fields. Try to be complete, but concise. Don't comment with redudant information like: int counter; // the counter
.