Skip to content

Latest commit

 

History

History
124 lines (87 loc) · 4.75 KB

How to contribute.md

File metadata and controls

124 lines (87 loc) · 4.75 KB

Contribution details

To contribute to the Portal as part of the open source community, please read the details defined below. Besides a generic "how to", some commit and pull request (PR) guidelines are defined to ensure readability and make newly created PRs easier to review. Additionally, changelogs can get validated as well as written with more ease. Moreover, similar patterns are in use across the contributor community.

Content:

How To Contribute

1 Create a fork

Open GitHub - "eclipse-tractusx" project and select the respective repository to which you want to contribute. Create a fork of the respective repo.

2 Fork setup

Setup your fork by entering a name and make sure that you unselect the "main branch only" selection, in case the upstream repository maintains release branches besides the main branch.

Click "Create fork".

3 Commit

With the newly created fork, you can now start to contribute. Create a new branch in your own fork and start to implement the planned changes or new features. When the implementation is ready, create a PR against the upstream repository.

The PR will get reviewed by the repository owners/official committers. As part of the PR review, checks will run automatically, and unit tests (if configured) will get executed. The PR owner is responsible to check the results and fix possible findings.

Commits, branches and pull requests guidelines

Commits and branches

The suggestion is to use Conventional Commits.

Here are some examples:

Feature branch

%%{init: { 'logLevel': 'debug', 'theme': 'base' } }%%
gitGraph
    commit id: "chore: initial commit"
    branch feature/feature1 order: 2
    commit id:"feat(function): add feature1"
    commit id:"feat(function): enable feature1"
    checkout main
    merge feature/feature1
Loading

Bugfix branch

%%{init: { 'logLevel': 'debug', 'theme': 'base' } }%%
gitGraph
    commit id: "build(v0.1.0): merge in main"
    branch bug/bug1  order: 2
    commit id: "fix(function): change bug"
    checkout bug/bug1
    commit id:"fix(function): refactor bug"
    checkout main
    merge bug/bug1
Loading

Release branch

%%{init: { 'logLevel': 'debug', 'theme': 'base' } }%%
gitGraph
    commit id: "build(v0.1.0): merge in main"
    branch release/v1.0.0 order: 2
    commit id: "build(v1.0.0): bump version, changelog..." tag: "v1.0.0"
    checkout main
    merge release/v1.0.0
Loading

Hotfix branch

%%{init: { 'logLevel': 'debug', 'theme': 'base' } }%%
gitGraph
    commit id: "release: v1.0.0"
    branch release/v1.0.0 order: 2
    commit id: "build(v1.0.0): bump version, changelog..." tag: "v1.0.0"
    checkout main
    merge release/v1.0.0
    checkout release/v1.0.0
    branch hotfix/v1.0.1 order: 3
    checkout hotfix/v1.0.1
    commit id: "hotfix(v1.0.1): bump version, changelog..." tag: "v1.0.1"
Loading

PR title

The suggested naming convention is '{type}{(function)}: {short summary}'.

PR description

Add details to the change, fix or feature in the PR description. What was changed, why was it changed (e.g. which issue was fixed or which requirement was implemented), and how was it changed.

Adding Pictures

If your change includes adding pictures, please add them in the following way:

  1. Add the picture to the docs/static folder if it is documentation app specific or to public/assets/images for portal app specific pictures.
  2. Generate a license file for your picture either manually or by using the scripts\license.sh. Please make sure that the license file states the correct information in term of legal obligations especially in the case of 3rd party content. Also, please don't change any information in already existing license files.
  3. [Only relevant for docs/static pictures] Link to your picture from the static folder like this https://raw.githubusercontent.com/eclipse-tractusx/portal-assets/main/docs/static/YOUR_FILE.png

The absolute path in step 3 is necessary because the documentation app is not yet enabled for relative paths: #236.

Additional information

Please refer to the Development Flow.

NOTICE

This work is licensed under the Apache-2.0.