Skip to main content

Git Conventions

Each change should be done in a Ticket (no matter how small).

We use a Feature Branch model. Start a branch from main and make a PR to main.

Branch naming:

{{ PROJECT_ABBREVIATION }}-{{ NUMBER }}-word1-word2-word2

e.g.: BC-1234-course-copy

We try to keep branch names small. The Ticket Number should be in Uppercase (e.g BC-1234) but the namespace should be in lowercase. It should stay below 64 letters.

Pull Requests

Pull Requests must contain a relevant description (template provides useful information, when creating the PR).

In case of UI changes also put a screenshot and talk to UX if thats fine like it is. All Pull Requests Criterias (as defined in deployment pipeline) must be green before merge, e.g. 1 approving review, unit tests or QA checkbox in PR template.

We merge by squash strategy. The squashed commit subject should start with a ticket number and end with a PR number. Write commit messages in imperative and active.

Example:

BC-1993 - lesson lernstore and geogebra copy (#3532)

In order to make sure developers in the future can find out why changes have been made,
we would like some descriptive text here that explains what we did and why.

- change some important things
- change some other things
- refactor some existing things

# We dont need to mention tests, changes that didnt make it to main, linter, or other fixups
# only leave lines that are relevant changes compared to main
# comments like this will not actually show up in the git history

Note for working with Windows: We strongly recommend to let git translate line endings. Please set git config --global --add core.autocrlf input when working with windows.