Skip to content
This repository has been archived by the owner on Mar 11, 2021. It is now read-only.

Latest commit

 

History

History
127 lines (97 loc) · 5.28 KB

CONTRIBUTING.md

File metadata and controls

127 lines (97 loc) · 5.28 KB

Contributing

When contributing a major change to this repository, please first discuss the change you wish to make via an issue or via Slack in the #emb-race-cfc-challenge channel. Minor issues can simply be addressed by sending by a pull request.

If you are an IBM employee, please ensure you have completed your Open Source Participation Guidelines certification.

Please note we have a Code of Conduct, please follow it in all your interactions with the project and its community.

Creating a GitHub account

In order to open issues, submit pull requests, or edit the wiki you'll need a GitHub account. Whether you use a personal email address or an IBM address, you can then link it back to your IBM-internal GitHub Enterprise account.

If you don't have a GitHub account, and only want to propose an idea, you can use this form to create an issue on your behalf.

Opening issues

Issues are for suggesting and discussing changes to this solution starter. You don't have to be technical to add your thoughts here. You can suggest a change, add a view point, or spark a discussion.

If you don't have a GitHub account, and only want to propose an idea, you can use this form to create an issue on your behalf.

Submitting pull requests

If you have a specific change you want to contribute, whether code or documentation, you can fork this repository and submit a pull request with the concrete change.

Editing the wiki

You are also free to provide documentation or notes through the wiki.The changes there can be merged into this repository directly, or they may serve as outside documentation.

Examples

An example of adding an idea or suggestion 

After reading the solution starter documentation in the README file, Ndu notices that the repository doesn't have a link to an important web page on the topic. After discussion the omission on Slack, folks agree that it would be an important and relevant addition to the repo. He then opens a GitHub issue summarizing the web page, and where a link to the web page should be included on the README or other sub pages. 

At that point there are a couple potential ways to get the link included:

  • One of the theme team leaders with direct write access to the repository could make the proposed change
  • Or, Ndu can fork the repository, make the proposed change in his copy, link to the issue, and send a pull request.
  • Or, another person all together can proactively make the pull request on his behalf.
  • The theme team leaders can accept the change

An example of providing working code

Sasha has an idea for a Node-RED flow that gathers data from several datasets on the Internet that have APIs. She writes a Node-RED flow locally or on the IBM Cloud. When she's done, she documents it, creates a demo video, and wants to contribute it to the repository.

At that point there are a couple potential ways to get the code for the Node-RED flow included:

  • Sasha can fork the repository, make the proposed change in her copy, link to the issue, and send a pull request.
  • Since it might be more complex of a change, there may be discussion about the pull request in GitHub
  • The theme team leaders can accept the change, including any changes that result from the discussion

Pull request process

  1. Fork the repository. If you already have a fork, update your fork to the current commit level.
  2. Commit your changes to your fork.
  3. Submit a pull request.
  4. Handle any feedback before the request is merged.
  5. Accept our sincere Thank You!

Catching up to the current commit of the upstream repository

  1. Make sure you don't have any uncommitted changes. Preserve updates that you want to keep by copying the files somewhere.
  2. Pull the main branch from the upstream respository to local files. If there are no merge conflicts the pull will create a fast forward commit in the local. (easiest way to do this is with the git bash shell)
  3. Push the local repository to your fork's remote
  4. In the Github web interface, refresh the page for your fork. It should now say that your fork is even with the upstream main.
  5. Now you can make the desired changes in your fork, and return to step 2 of the pull request process.

Example git bash command for step 2, pull the main branch of upstream repository

C:\development\git-repos\Embrace-Judicial-Reform>git pull https://github.com/Call-for-Code/Embrace-Judicial-Reform.git

From https://github.com/Call-for-Code/Embrace-Judicial-Reform
 * branch            HEAD       -> FETCH_HEAD
Updating d73fd06..3715c78
Fast-forward
 CODE_OF_CONDUCT.md |  18 ++++----
 CONTRIBUTING.md    |  63 +++++++++++++++++++--------
 README.md          | 123 ++++++++++++++++++++++++++++++++++-------------------
 SLACK.md           |  15 ++++++-
 SUPPORT.md         |   6 ++-
 5 files changed, 153 insertions(+), 72 deletions(-)

Support

If you have any questions about how to contribute, reach out to the team through the support resources.