-
Notifications
You must be signed in to change notification settings - Fork 444
Rewrite CONTRIBUTING.md #705
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
yeasy
merged 9 commits into
hyperledger-cello:main
from
dodo920306:fix/outdated-contributing
Jul 8, 2025
+55
−113
Merged
Changes from 3 commits
Commits
Show all changes
9 commits
Select commit
Hold shift + click to select a range
a967cbe
Rewrite CONTRIBUTING.md
dodo920306 f1a9669
Update docs/contributing.md
dodo920306 ac82c4a
Merge branch 'main' into fix/outdated-contributing
yeasy 64785f5
Fix nonexistent wiki page link
dodo920306 bd46f47
Merge branch 'main' into fix/outdated-contributing
yeasy 0b75351
Merge branch 'main' into fix/outdated-contributing
yeasy 2a8a55e
Merge branch 'main' into fix/outdated-contributing
yeasy a86ad03
Update mail list links
dodo920306 c050c52
Remove Discord links
dodo920306 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,57 +1,46 @@ | ||
| [//]: # (SPDX-License-Identifier: CC-BY-4.0) | ||
|
|
||
| Any kind of contribution is encouraged, e.g., [Jira items](https://jira.hyperledger.org/projects/CE/issues) or [patchsets](https://github.com/hyperledger/cello). | ||
| ## Introduction | ||
|
|
||
| ## 1. LF ID Application | ||
| The project employs [GitHub](https://github.com/hyperledger-cello/cello) as the code commit/review system. | ||
|
|
||
| All the tools require an Linux Foundation (LF) ID. | ||
| In brief, if you want to contribute, create or find some [GitHub Issues](https://docs.github.com/en/issues) and submit changes via [GitHub Pull Requests](https://docs.github.com/en/pull-requests). | ||
|
|
||
| If you do not have an LF ID, [here is how to get one](https://wiki.hyperledger.org/display/CA/Setting+up+an+LFID). | ||
| ## Questions and discussions | ||
|
|
||
| ## 2. Jira board usage | ||
| * [Wikipage](https://wiki.hyperledger.org/projects/cello): Lots of information and documentation about the project, e.g., meeting schedule, design doc. | ||
| * [Mail List](mailto:[email protected]): General technical topics with Cello project. | ||
yeasy marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| * [Discord](https://discord.gg/hyperledger): Real-time online discussions. | ||
yeasy marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
||
| We are using [Jira](https://jira.hyperledger.org/projects/CE) to track the project progress, and welcome to report bug issues or create to-do tasks there. Each item should try keeping simple and focused, hence easy to fix and review. | ||
| ## Code Commit Steps | ||
|
|
||
| After login with your LF ID, you can see those task items with one of the following statuses: | ||
| 1. Fork the repository | ||
|
|
||
| * `To Do`: Available for picking and fix. | ||
| * `In Progress`: Some on already picked it (check the assignee) to work on. | ||
| * `Under Review`: Related patchset has been submitted for review, and added as comment under the Jira item. | ||
| * `Done`: Patchset merged, the item has been resolved. | ||
| Click the "Fork" button at the top right of the repository page. | ||
|
|
||
| In brief, if you want to contribute, create or find some `To Do` item, and assign it to yourself, then update its status to `In Progress`. After the item is fixed, remember to mark it as `Under Review` and `Done` when the patch is submitted and merged. | ||
|
|
||
| ## 3. Questions and discussions | ||
|
|
||
| * [Chat](https://discord.gg/hyperledger): technical discussions and questions | ||
|
|
||
| ## 4. Code Commit Steps | ||
|
|
||
| The project employs [GitHub](https://github.com/hyperledger/cello) as the code commit/review system. | ||
|
|
||
| * Before committing code, please go to [Jira](https://jira.hyperledger.org/projects/CE) to create a new task or check if there's related existing one, then assign yourself as the assignee. Notice each task will get a Jira number like [CE-26](https://jira.hyperledger.org/browse/CE-26). | ||
|
|
||
| * Clone the project to your working directory. | ||
| 2. Clone the project to your working directory. | ||
|
|
||
| ```bash | ||
| $ git clone [email protected]:hyperledger/cello.git | ||
| $ git clone https://github.com/<your-username>/cello.git | ||
| $ cd cello | ||
| ``` | ||
|
|
||
| (Optionally) Config your git name and email if not setup previously. | ||
| 3. Config your git name and email if not setup previously. | ||
|
|
||
| ```bash | ||
| $ git config user.name "your name" | ||
| $ git config user.email "your email" | ||
| ``` | ||
|
|
||
| * Assign yourself a `To Do` Jira task, mark it as `In progress`, then create a branch with the Jira task number off of your cloned repository, e.g., for CE-26, it can be: | ||
| 4. Create a feature branch | ||
|
|
||
| Always create a meaningful branch name off main: | ||
|
|
||
| ```bash | ||
| $ cd cello | ||
| $ git checkout -b CE-26 | ||
| $ git checkout -b feature/awesome-feature | ||
| ``` | ||
|
|
||
| * After modifying the code, run `make check` to make sure all the checking is passed. Then Commit your code with `-s` to sign-off, and `-a` to automatically add changes (or run `git add .` to include all changes manually). | ||
| 5. After modifying the code, run `make check` to make sure all the checking is passed. | ||
|
|
||
| ```bash | ||
| $ make check | ||
|
|
@@ -61,45 +50,29 @@ $ make check | |
| py35: commands succeeded | ||
| flake8: commands succeeded | ||
| congratulations :) | ||
| ``` | ||
|
|
||
| 6. Commit your code with `-s` to sign-off, and `-a` to automatically add changes (or run `git add .` to include all changes manually). | ||
|
|
||
| ```bash | ||
| $ git commit -s -a | ||
| ``` | ||
|
|
||
| Example commit msg may look like (take CE-1234 for example): | ||
| Example commit msg may look like: | ||
|
|
||
| ```bash | ||
| [CE-1234] A short description of your change with no period at the end | ||
| A short description of your change with no period at the end | ||
|
|
||
| You can add more details here in several paragraphs, but please keep each line | ||
| width less than 80 characters. A bug fix should include the issue number. | ||
|
|
||
| CE-1234 #done. | ||
|
|
||
| Signed-off-by: Your Name <[email protected]> | ||
| ``` | ||
| * Submit your PR using [hub](https://github.com/github/hub/), and mark the | ||
| corresponding Jira item as `Under Review`. | ||
|
|
||
| ```bash | ||
| docs % git push ryjones | ||
| Enumerating objects: 7, done. | ||
| Counting objects: 100% (7/7), done. | ||
| Delta compression using up to 4 threads | ||
| Compressing objects: 100% (4/4), done. | ||
| Writing objects: 100% (4/4), 835 bytes | 835.00 KiB/s, done. | ||
| Total 4 (delta 3), reused 0 (delta 0), pack-reused 0 | ||
| remote: Resolving deltas: 100% (3/3), completed with 3 local objects. | ||
| To github.com:ryjones/cello.git | ||
| 90f0d2e..ec42e8a master -> master | ||
| docs % hub pull-request | ||
| https://github.com/hyperledger/cello/pull/145 | ||
| docs % | ||
| ``` | ||
|
|
||
| Notice you will get a GitHub PR url like `https://github.com/hyperledger/cello/pull/145`, open it and check the status. | ||
| 6. Open a PR on https://github.com/hyperledger-cello/cello/pulls. | ||
|
|
||
| After the ci checking passed, add [reviewers](https://wiki.hyperledger.org/projects/cello#contributors) to the reviewer list and also post the GitHub PR url in the chat channel. The patch will be merged into the `master` branch after passing the review, then mark the Jira item as `Done`. | ||
| After the ci checking passed, wait for reviewers to approve it. The patch will be merged into the `main` branch after passing the review. | ||
|
|
||
| * If you need to refine the patch further as the reviewers may suggest, you can change on the same branch, and commit the new code with `git commit -a --amend`, and then use the `git review` command again. | ||
| If you need to refine the patch further as the reviewers may suggest, you can change on the same branch, and commit the new code, and then re-request review. | ||
|
|
||
| <a rel="license" href="http://creativecommons.org/licenses/by/4.0/"><img alt="Creative Commons License" style="border-width:0" src="https://i.creativecommons.org/l/by/4.0/88x31.png" /></a><br />This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>. | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,57 +1,46 @@ | ||
| [//]: # "SPDX-License-Identifier: CC-BY-4.0" | ||
| [//]: # (SPDX-License-Identifier: CC-BY-4.0) | ||
|
|
||
| Any kind of contribution is encouraged, e.g., [Jira items](https://jira.hyperledger.org/projects/CE/issues) or [patchsets](https://github.com/hyperledger/cello). | ||
| ## Introduction | ||
|
|
||
| ## 1. LF ID Application | ||
| The project employs [GitHub](https://github.com/hyperledger-cello/cello) as the code commit/review system. | ||
|
|
||
| All the tools require an Linux Foundation (LF) ID. | ||
| In brief, if you want to contribute, create or find some [GitHub Issues](https://docs.github.com/en/issues) and submit changes via [GitHub Pull Requests](https://docs.github.com/en/pull-requests). | ||
|
|
||
| If you do not have an LF ID, [here is how to get one](https://wiki.hyperledger.org/display/CA/Setting+up+an+LFID). | ||
| ## Questions and discussions | ||
|
|
||
| ## 2. Jira board usage | ||
| * [Wikipage](https://wiki.hyperledger.org/projects/cello): Lots of information and documentation about the project, e.g., meeting schedule, design doc. | ||
| * [Mail List](mailto:[email protected]): General technical topics with Cello project. | ||
| * [Discord](https://discord.gg/hyperledger): Real-time online discussions. | ||
|
|
||
| We are using [Jira](https://jira.hyperledger.org/projects/CE) to track the project progress, and welcome to report bug issues or create to-do tasks there. Each item should try keeping simple and focused, hence easy to fix and review. | ||
| ## Code Commit Steps | ||
|
|
||
| After login with your LF ID, you can see those task items with one of the following statuses: | ||
| 1. Fork the repository | ||
|
|
||
| * `To Do`: Available for picking and fix. | ||
| * `In Progress`: Some on already picked it (check the assignee) to work on. | ||
| * `Under Review`: Related patchset has been submitted for review, and added as comment under the Jira item. | ||
| * `Done`: Patchset merged, the item has been resolved. | ||
| Click the "Fork" button at the top right of the repository page. | ||
|
|
||
| In brief, if you want to contribute, create or find some `To Do` item, and assign it to yourself, then update its status to `In Progress`. After the item is fixed, remember to mark it as `Under Review` and `Done` when the patch is submitted and merged. | ||
|
|
||
| ## 3. Questions and discussions | ||
|
|
||
| * [Chat](https://discord.gg/hyperledger): technical discussions and questions | ||
|
|
||
| ## 4. Code Commit Steps | ||
|
|
||
| The project employs [GitHub](https://github.com/hyperledger/cello) as the code commit/review system. | ||
|
|
||
| * Before committing code, please go to [Jira](https://jira.hyperledger.org/projects/CE) to create a new task or check if there's related existing one, then assign yourself as the assignee. Notice each task will get a Jira number like [CE-26](https://jira.hyperledger.org/browse/CE-26). | ||
|
|
||
| * Clone the project to your working directory. | ||
| 2. Clone the project to your working directory. | ||
|
|
||
| ```bash | ||
| $ git clone [email protected]:hyperledger/cello.git | ||
| $ git clone https://github.com/<your-username>/cello.git | ||
| $ cd cello | ||
| ``` | ||
|
|
||
| (Optionally) Config your git name and email if not setup previously. | ||
| 3. Config your git name and email if not setup previously. | ||
|
|
||
| ```bash | ||
| $ git config user.name "your name" | ||
| $ git config user.email "your email" | ||
| ``` | ||
|
|
||
| * Assign yourself a `To Do` Jira task, mark it as `In progress`, then create a branch with the Jira task number off of your cloned repository, e.g., for CE-26, it can be: | ||
| 4. Create a feature branch | ||
|
|
||
| Always create a meaningful branch name off main: | ||
|
|
||
| ```bash | ||
| $ cd cello | ||
| $ git checkout -b CE-26 | ||
| $ git checkout -b feature/awesome-feature | ||
| ``` | ||
|
|
||
| * After modifying the code, run `make check` to make sure all the checking is passed. Then Commit your code with `-s` to sign-off, and `-a` to automatically add changes (or run `git add .` to include all changes manually). | ||
| 5. After modifying the code, run `make check` to make sure all the checking is passed. | ||
|
|
||
| ```bash | ||
| $ make check | ||
|
|
@@ -61,46 +50,29 @@ $ make check | |
| py35: commands succeeded | ||
| flake8: commands succeeded | ||
| congratulations :) | ||
| ``` | ||
|
|
||
| 6. Commit your code with `-s` to sign-off, and `-a` to automatically add changes (or run `git add .` to include all changes manually). | ||
|
|
||
| ```bash | ||
| $ git commit -s -a | ||
| ``` | ||
|
|
||
| Example commit msg may look like (take CE-1234 for example): | ||
| Example commit msg may look like: | ||
|
|
||
| ```bash | ||
| [CE-1234] A short description of your change with no period at the end | ||
| A short description of your change with no period at the end | ||
|
|
||
| You can add more details here in several paragraphs, but please keep each line | ||
| width less than 80 characters. A bug fix should include the issue number. | ||
|
|
||
| CE-1234 #done. | ||
|
|
||
| Signed-off-by: Your Name <[email protected]> | ||
| ``` | ||
|
|
||
| * Submit your PR using [hub](https://github.com/github/hub/), and mark the | ||
| corresponding Jira item as `Under Review`. | ||
|
|
||
| ```bash | ||
| docs % git push ryjones | ||
| Enumerating objects: 7, done. | ||
| Counting objects: 100% (7/7), done. | ||
| Delta compression using up to 4 threads | ||
| Compressing objects: 100% (4/4), done. | ||
| Writing objects: 100% (4/4), 835 bytes | 835.00 KiB/s, done. | ||
| Total 4 (delta 3), reused 0 (delta 0), pack-reused 0 | ||
| remote: Resolving deltas: 100% (3/3), completed with 3 local objects. | ||
| To github.com:ryjones/cello.git | ||
| 90f0d2e..ec42e8a master -> master | ||
| docs % hub pull-request | ||
| https://github.com/hyperledger/cello/pull/145 | ||
| docs % | ||
| ``` | ||
|
|
||
| Notice you will get a GitHub PR url like `https://github.com/hyperledger/cello/pull/145`, open it and check the status. | ||
| 7. Open a PR on https://github.com/hyperledger-cello/cello/pulls. | ||
|
|
||
| After the ci checking passed, add [reviewers](https://wiki.hyperledger.org/projects/cello#contributors) to the reviewer list and also post the GitHub PR url in the chat channel. The patch will be merged into the `master` branch after passing the review, then mark the Jira item as `Done`. | ||
| After the ci checking passed, wait for reviewers to approve it. The patch will be merged into the `main` branch after passing the review. | ||
|
|
||
| * If you need to refine the patch further as the reviewers may suggest, you can change on the same branch, and commit the new code with `git commit -a --amend`, and then use the `git review` command again. | ||
| If you need to refine the patch further as the reviewers may suggest, you can change on the same branch, and commit the new code, and then re-request review. | ||
|
|
||
| <a rel="license" href="http://creativecommons.org/licenses/by/4.0/"><img alt="Creative Commons License" style="border-width:0" src="https://i.creativecommons.org/l/by/4.0/88x31.png" /></a><br />This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>. | ||
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.