Skip to content

Latest commit

 

History

History
123 lines (84 loc) · 4.42 KB

CONTRIBUTING.md

File metadata and controls

123 lines (84 loc) · 4.42 KB

Getting Started

Contribution is not easy, so we created this document to describe how to get you setup so you can contribute back and make everyone's life easier. All contributions will be made via pull request which goes through review process. We have disabled push to main branch, therefore all changes must go through pull request.

GitHub Account

If you don't have a GitHub account please register your account.

Default Branch

The default branch is main. This branch is protected to ensure no-one accidently deletes this branch. All PRs are sent to main branch.

Contribution

Please Fork this repo located in top-right corner before you start contribution. If your product is part of E4S DocPortal you may proceed with contribution, if not please contact E4S before you contribute to this repo.

This repo contains CI badges for each E4S product, if you have badges in top-level README you should verify the badges are consistent with this repo. For example if you are the Kokkos team you should verify the CI badges in Kokkos README are consistent with the Kokkos entry in the README.md table.

We use shields.io to extract default badges found in most github projects. You can use this as reference if you want to add additional badges.

Setup

Assuming you have forked the repo, you will want to clone your fork repo.

git clone git@github.com:YOUR\_GITHUB\_LOGIN/e4s-ci-badges.git

You might need to setup your SSH keys in your git profile if you are using ssh option for cloning. For more details on setting up SSH keys in your profile, follow instruction found in https://help.github.com/articles/connecting-to-github-with-ssh/

SSH key will help you pull and push to repository without requesting for password for every commit. Once you have forked the repo, clone your local repo

Next let's navigate to the directory and add the upstream repo endpoint as follows:

cd e4s-ci-badges
git remote add upstream git@github.com:E4S-Project/e4s-ci-badges.git

The upstream tag is used to sync your local fork with upstream repo.

Make sure you set your user name and email set properly in git configuration. We don't want commits from unknown users. This can be done by setting the following:

git config user.name "First Last"
git config user.email "abc@example.com"

For more details see First Time Git Setup.

Sync your branch from upstream

The main from upstream will get Pull Requests from other contributors, in-order to sync your forked repo with upstream, run the commands below::

cd e4s-ci-badges
git checkout main
git fetch upstream main
git pull upstream main

Once the changes are pulled locally you can sync your upstream fork as follows:

git checkout main
git push origin main

Feature Branch

Please make sure to create a new branch when adding and new feature. Do not push to main branch on your fork or upstream.

Create a new feature branch from main as follows:

 cd e4s-ci-badges
 git checkout main
 git checkout -b <BRANCHNAME>

Once you are ready to push to your fork repo do the following:

git push origin <BRANCHNAME>

Once the branch is created in your fork, you can issue a Pull Request to main branch for upstream repo (https://github.com/E4S-Project/e4s-ci-badges).

Please check the CI actions reported in your pull request and make sure they pass. The urlchecker workflow is responsible for checking urls, this is using github action urlstechie/urlchecker-action. If the CI check reports a failure on url that is valid please exclude the url in the check. For more details on urlchecker-action see the documentation.