ℹ️ Guidelines to keep in mind working on and with the EDIA toolbox

<aside> 💡

FYI: The Blue Oak Contributor License applies to all contributions to the EDIA Toolbox .

</aside>

#️⃣ CODE

⌨️ Coding conventions

Structure and agreements on the actual code.



📦 Naming conventions

Names of Packages, namespaces, etc.


3️⃣ Third-party content


:icons8-git-50: GIT

How we handle Git repositories and project development.

All projects are stored on GitHub.

:icons8-branch-arrow-64: Git branches

Branch rules

  1. Do not commit to other peoples branches, unless agreed upon.
  2. Do not merge any branches into the dev branch unless someone else approved it.
  3. Use meaningful branch names (see below).

Branch naming

To keep things clear for everyone involved, we agreed on naming standards.

prefix description exampleBranchName versioning comment
main Deployed as major release main 2.x.x
dev Stable DEV branch which is used in active project dev x.2.x Do not commit/push to dev in 99% of the cases. Use a dedicated branch and a merge request instead.
feat Feature that is added or worked on feat/updateSlider x.2.x
fix Fix for issue or bug i.e: 5-trialresults-arrays-in-settings-dont-get-logged-correctly x.x.2 On github there is the possibility to create a branch from the issue in the rightside menu.
This is the most clean way of linking things together as it will reference this also when making a merge request.
test Throwaway branch created to experiment test/inverseRotation

Branching pipeline

When do we branch off, when do we merge, etc.

Main branch;

Have a stable main branch where projects can build upon for a longer period of time. Update only when big changes are implemented and stable in the Dev branch. Small patches are possible to release when they don’t ‘break’ the core functionalities.

Dev Branch;

There is always a Dev branch on which get’s developed. For each feature, patch, experiment, a subbranch is created to develop in. When this is tested and working, a merge request can be made into the Dev branch. When the situation occurs that a merge request is not validated yet, but this blocks further development for a follow-up feature 02, then branch off the feature 01 branch and do a merge request with both features in it towards the Dev branch.

If you happen to have started to work on feature 02, before you were aware of the feature 01 branch, ideally try to rebase your branch to feature 01 branch as soon as possible so we maintain a clean and linear git history.

Dev_BranchDevelopment.png