Skip to content

Latest commit

 

History

History
118 lines (89 loc) · 4.3 KB

CONTRIBUTING.md

File metadata and controls

118 lines (89 loc) · 4.3 KB

Contributing to GrimoireLab Tutorial

This tutorial is built using Markdown syntax, Jekyll, and pmarsceill/just-the-docs theme.

All the Markdown files and Jekyll configuration files are maintained in the chaoss/grimoirelab-tutorial GitHub repository.

All Contributions are welcome! You can open pull requests to add the related content. Feel free to open issues, to report some bug, to propose some enhancement, to ask for some new content, or just to comment or suggest something. Any feedback is appreciated!

If you are willing to setup the tutorial locally

git clone https://github.com/chaoss/grimoirelab-tutorial
cd grimoirelab-tutorial
bundle
bundle exec jekyll serve

Note: Make sure you have git and ruby (version 2.7.x) installed.

This will produce the HTML files, and run an HTTP server that will serve them in http://localhost:4000.

Quick start for contributing

These are the basic steps to set up a developing and testing environment to contribute, using GitHub facilities. You can read more details about how to contribute to a project in GitHub in How to GitHub: Fork, Branch, Track, Squash and Pull Request.

  1. Fork the tutorial repository on GitHub. You can use the GitHub web interface for this. The result will be a new repository with the rest of your repositories, which is a fork (copy) of the GrimoireLab Tutorial.

  2. Clone the forked git repository, and create in a local branch for your contribution.

git clone https://github.com/username/grimoirelab-tutorial/
cd grimoirelab-tutorial/
git checkout -b new-branch-name
  1. In this repository, set up a remote for the upstream (original grimoirelab-tutorial) git repository.
git remote add upstream https://github.com/chaoss/grimoirelab-tutorial/
  1. Now you can change the documentation and then commit it. Except that the contribution really needs it, use a single commit, and comment in detail in the corresponding commit message what it is intended to do. If it fixes some bug, reference it (with the text "Fixes #23", for example, for issue number 23).
git add -A
git commit -s
  1. Once your contribution is ready, rebase your local branch with upstream/master, so that it merges clean with that branch, and push your local branch to a remote branch to your GitHub repository.
git fetch upstream
git rebase upstream/master
git push origin new-branch-name
  1. In the GitHub interface, produce a pull request from your branch (you will see an option to do that if you visit the webpage for your own repository in GitHub). Be sure of including a reasonable comment with the pull request.

  2. Visit frequently the pull request in GitHub, to attend to comments and requests by GrimoireLab Tutorial developers (or watch it via email).

  3. Please keep in mind the the pull request will be merged into the codebase only if those comments and requests are addressed.

DCO and Sign-Off for contributions

The CHAOSS Charter requires that contributions are accompanied by a Developer Certificate of Origin sign-off. For ensuring it, a bot checks all incoming commits.

For users of the git command line interface, a sign-off is accomplished with the -s as part of the commit command:

git commit -s -m 'This is a commit message'

For users of the GitHub interface (using the "edit" button on any file, and producing a commit from it), a sign-off is accomplished by writing

Signed-off-by: Your Name <[email protected]>

in a single line, into the commit comment field. This can be automated by using a browser plugin like DCO GitHub UI.

Contributing Guidelines

These are some general guidelines and information related to how we contribute to GrimoireLab. You can read about it from the CONTRIBUTING.md.